MySQL 按天/月統計數據,沒有的填充為0


一、按某月查詢所有天數

ps:用到一張中間表 https://pan.baidu.com/s/1tAFU4nm1p4CkSneXwceA_A

          提取碼:b3xi

1、sql

其中第四行的  now() 可以傳入日期:格式為 'yyyy-MM-dd'

SELECT
        temp.date as dates,
        IFNULL(u.singleDiseasesNum,0) as isorno

  from(   SELECT DATE_ADD((date_add(date_add(last_day(now()),interval 1 day),interval -1 month)),INTERVAL  numlist.id  DAY)AS 'date' FROM
        (
        SELECT * from
        (SELECT i AS id FROM num ) a
        where a.id <=30 
        ) AS numlist
      
) temp
        LEFT JOIN
        (
        SELECT
        DATE(c.create_time) AS udate,
        COUNT(if( c.integral_type='1' ,1,NULL) )as singleDiseasesNum

        FROM
        home_integral_log c
        WHERE
        1 = 1
                and m_id=4
        
        GROUP BY DATE(c.create_time)
        ) u on DATE(temp.date) = u.udate ORDER BY temp.date

2、結果

 

原文鏈接:https://www.cnblogs.com/ourlang/p/12230991.html

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM