国产成人精品亚洲777人妖,欧美日韩精品一区视频,最新亚洲国产,国产乱码精品一区二区亚洲

您的位置:首頁技術(shù)文章
文章詳情頁

mysql優(yōu)化 - mysql 查7天數(shù)據(jù),無數(shù)據(jù)的補0怎么寫呢?

瀏覽:132日期:2022-06-19 10:28:30

問題描述

表里有個字段紀錄每次點擊的時間,查最近7天每日的數(shù)據(jù),但其中可能有幾天沒數(shù)據(jù),怎么把沒數(shù)據(jù)的天數(shù)設(shè)置為0,sql語句怎么寫

問題解答

回答1:

據(jù)我所知,mysql只能說在null的時候返回其他值(比如SELECT IFNULL( (SELECT field1 FROM table WHERE id = 123) , 0);),但像題主這樣要補上本來不存在的數(shù)據(jù)挺難,可能別人會有方法。

我想說的是,就算sql能搞定這件事,也最好不要放sql,而是放在你的應(yīng)用程序里。這種邏輯性的東西放程序里更好管控,也更方便理解

回答2:

先構(gòu)建一個最近7天的結(jié)果集,然后和查詢出的結(jié)果集做Left Join,如:

select a.click_date, ifnull(b.click_qty, 0)from ( select * from ( SELECT curdate() as click_date union all SELECT date_sub(curdate(), interval 1 day) as click_date union all SELECT date_sub(curdate(), interval 2 day) as click_date union all SELECT date_sub(curdate(), interval 3 day) as click_date union all SELECT date_sub(curdate(), interval 4 day) as click_date union all SELECT date_sub(curdate(), interval 5 day) as click_date union all SELECT date_sub(curdate(), interval 6 day) as click_date )) a left join ( select click_date, count(*) as click_qty from click_log_table group by click_date) b

主站蜘蛛池模板: 交口县| 康马县| 和顺县| 新竹市| 建阳市| 康平县| 宿松县| 浪卡子县| 南川市| 彭泽县| 彰化市| 长寿区| 子洲县| 洞头县| 彰化县| 临江市| 芜湖市| 江陵县| 太白县| 斗六市| 璧山县| 辽阳市| 久治县| 阿勒泰市| 宽甸| 通河县| 兴义市| 永平县| 新巴尔虎左旗| 保山市| 奎屯市| 临海市| 宜阳县| 民丰县| 东丰县| 福鼎市| 西贡区| 遂川县| 江达县| 嵩明县| 科尔|