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

您的位置:首頁技術文章
文章詳情頁

mysql優化 - mysql 查7天數據,無數據的補0怎么寫呢?

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

問題描述

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

問題解答

回答1:

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

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

回答2:

先構建一個最近7天的結果集,然后和查詢出的結果集做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

主站蜘蛛池模板: 英德市| 襄汾县| 通辽市| 廉江市| 城固县| 玉门市| 天水市| 大宁县| 锦州市| 陵川县| 太仓市| 巴楚县| 教育| 波密县| 小金县| 平湖市| 苗栗市| 遂川县| 西宁市| 仙游县| 大厂| 股票| 田林县| 思茅市| 永昌县| 库车县| 漠河县| 三河市| 体育| 剑阁县| 汉川市| 梅河口市| 长岛县| 梅河口市| 汕尾市| 乐清市| 岳池县| 扬中市| 茂名市| 卢氏县| 通江县|