国产99久久精品_欧美日本韩国一区二区_激情小说综合网_欧美一级二级视频_午夜av电影_日本久久精品视频

最新文章專題視頻專題問答1問答10問答100問答1000問答2000關鍵字專題1關鍵字專題50關鍵字專題500關鍵字專題1500TAG最新視頻文章推薦1 推薦3 推薦5 推薦7 推薦9 推薦11 推薦13 推薦15 推薦17 推薦19 推薦21 推薦23 推薦25 推薦27 推薦29 推薦31 推薦33 推薦35 推薦37視頻文章20視頻文章30視頻文章40視頻文章50視頻文章60 視頻文章70視頻文章80視頻文章90視頻文章100視頻文章120視頻文章140 視頻2關鍵字專題關鍵字專題tag2tag3文章專題文章專題2文章索引1文章索引2文章索引3文章索引4文章索引5123456789101112131415文章專題3
問答文章1 問答文章501 問答文章1001 問答文章1501 問答文章2001 問答文章2501 問答文章3001 問答文章3501 問答文章4001 問答文章4501 問答文章5001 問答文章5501 問答文章6001 問答文章6501 問答文章7001 問答文章7501 問答文章8001 問答文章8501 問答文章9001 問答文章9501
當前位置: 首頁 - 科技 - 知識百科 - 正文

mysql按照天統計報表當天沒有數據填0的實現代碼

來源:懂視網 責編:小采 時間:2020-11-09 20:28:44
文檔

mysql按照天統計報表當天沒有數據填0的實現代碼

mysql按照天統計報表當天沒有數據填0的實現代碼:1.問題復現: 按照天數統計每天的總數,如果其中有幾天沒有數據,那么group by 返回會忽略那幾天,如何填充0?如下圖,統計的10-3~10-10 7天的數據,其中只有8號和10號有數據,這樣返回,數據只有2個,不符合報表統計的需求。期望沒有值填0 2.換個思維
推薦度:
導讀mysql按照天統計報表當天沒有數據填0的實現代碼:1.問題復現: 按照天數統計每天的總數,如果其中有幾天沒有數據,那么group by 返回會忽略那幾天,如何填充0?如下圖,統計的10-3~10-10 7天的數據,其中只有8號和10號有數據,這樣返回,數據只有2個,不符合報表統計的需求。期望沒有值填0 2.換個思維

1.問題復現:

按照天數統計每天的總數,如果其中有幾天沒有數據,那么group by 返回會忽略那幾天,如何填充0?如下圖,統計的10-3~10-10 7天的數據,其中只有8號和10號有數據,這樣返回,數據只有2個,不符合報表統計的需求。期望沒有值填0

2.換個思維:

我們用一組連續的天數作為左表然后left join 要查詢的數據 最后group by.:連續天數表 t1 left join 業務數據  t2 group by t1.day ,如下圖:

SELECT
 t1.`day`,
 COUNT(t2.user_id) payment_num
FROM
 (SELECT
 @cdate := DATE_ADD(@cdate, INTERVAL - 1 DAY) DAY
 FROM
 (SELECT
 @cdate := DATE_ADD('20171219', INTERVAL + 1 DAY)
 FROM
 order) t0
 LIMIT 7) t1
 LEFT JOIN
 (SELECT
 DATE(a.create_time) DAY,
 a.user_id
 FROM
 pay_payment a
 JOIN dealer_store b
 ON a.order_no = b.order_no
 WHERE DATE(create_time) <= '20171219'
 AND DATE(create_time) > DATE_SUB('20171219', INTERVAL 7 DAY)
 ) t2
 ON t2.day = t1.day
GROUP BY t1.`day`;

2.1 連續天數表

SELECT
 @cdate := DATE_ADD(@cdate, INTERVAL - 1 DAY) DAY
 FROM
 (SELECT
 @cdate := DATE_ADD('20171219', INTERVAL + 1 DAY)
 FROM
 order) t0
 LIMIT 7

執行結果如下:

SQL分析:

1. @cdate :=  是定義名為cdate的變量并賦值(select 后面必須用:=)

2.@cdate := DATE_ADD('20171219', INTERVAL + 1 DAY) 按照傳入的日期'20171219',加一天

3.SELECT @cdate := DATE_ADD('20171219', INTERVAL + 1 DAY) FROM `order`  找一張表記錄肯定大于10條的即可,執行結果如下:

4.@cdate := DATE_ADD(@cdate, INTERVAL - 1 DAY) DAY  把定義的cdate變量天數-1(自減)

5.LIMIT 7 限制一下條數,大功告成,我們得到了指定日期往前7天的記錄

2.2 左關聯然后分組

left join group by t1.day

即按照左表關聯業務數據,根據左表的日期分組,即分成了指定的7天數據,有記錄就統計條數,沒有記錄就是0

最終執行結果:

總結

以上所述是小編給大家介紹的mysql按照天統計報表當天沒有數據填0的實現代碼,希望對大家有所幫助,如果大家有任何疑問請給我留言,小編會及時回復大家的。在此也非常感謝大家對腳本之家網站的支持!

您可能感興趣的文章:

  • mysql中數據統計的技巧備忘錄
  • PHP+MySQL實現對一段時間內每天數據統計優化操作實例
  • php 廣告點擊統計代碼(php+mysql)
  • 概述MySQL統計信息
  • MySQL按時間統計數據的方法總結
  • 聲明:本網頁內容旨在傳播知識,若有侵權等問題請及時與本網聯系,我們將在第一時間刪除處理。TEL:177 7030 7066 E-MAIL:11247931@qq.com

    文檔

    mysql按照天統計報表當天沒有數據填0的實現代碼

    mysql按照天統計報表當天沒有數據填0的實現代碼:1.問題復現: 按照天數統計每天的總數,如果其中有幾天沒有數據,那么group by 返回會忽略那幾天,如何填充0?如下圖,統計的10-3~10-10 7天的數據,其中只有8號和10號有數據,這樣返回,數據只有2個,不符合報表統計的需求。期望沒有值填0 2.換個思維
    推薦度:
    標簽: 天的 統計 統計的
    • 熱門焦點

    最新推薦

    猜你喜歡

    熱門推薦

    專題
    Top
    主站蜘蛛池模板: 亚洲欧洲另类 | 亚洲欧美在线观看 | 日本国产在线观看 | 日韩精品欧美高清区 | 欧美日韩亚洲色图 | 免费一级a毛片在线播放直播 | 亚洲 欧美 视频 | 最新色视频 | 91精品一区二区三区在线观看 | 日本aⅴ精品一区二区三区久久 | 国产精品久久香蕉免费播放 | 毛片视频网址 | 国产一级持黄大片99久久 | 国产高清在线免费观看 | 国产成人高清一区二区私人 | 欧美福利在线视频 | 亚洲色图国产精品 | 视频一区二区免费 | 国产精品亚洲精品不卡 | 手机国产精品一区二区 | 国产日韩中文字幕 | 国产成人精品日本亚洲语音1 | 亚洲精品在线免费观看视频 | 91亚洲国产成人久久精品网址 | 一97日本道伊人久久综合影院 | 久久久无码精品亚洲日韩按摩 | 久久精品成人一区二区三区 | 国产在线高清视频 | 日韩免费一区 | 国内一区二区三区精品视频 | 久久久一区二区三区不卡 | 足交在线观看 | 99久久免费国产精品特黄 | 91精品一区二区三区久久久久 | 亚洲精品国产综合久久一线 | 亚洲精品日韩中文字幕久久久 | 国产一区二区在线免费观看 | 99久久精品国产综合一区 | 亚洲欧美日韩精品久久久 | 国产欧美日韩综合精品无毒 | 在线观看国产 |