如何在MySQL的无行日中每天对行数进行分组?

如何在MySQL的无行日中每天对行数进行分组?,第1张

如何在MySQL的无行日中每天对行数进行分组?

为了处理带有0条对应记录的日期,我的常规做法是使用日历表进行联接。

例如,创建一个表,其中一个字段称为,

calendar_date
并在其中填充从
1st Jan 2000
到的每个日期
31st Dec2070
,或其他适合您报表目的的范围。

然后使用类似…

SELECt  calendar.calendar_date,  COUNT(*)FROM  calendarLEFT JOIN  yourData    ON  yourData.timeStamp >= calendar.calendar_date    AND yourData.timeStamp <  calendar.calendar_date + 1WHERe      calendar.calendar_date >= '01 Jan 2012'  AND calendar.calendar_date <  '04 Jan 2012'GROUP BY  calendar.calendar_date

该表可以有许多其他用途,例如标记银行假期,几周和几个月的开始。通过谨慎使用标志和索引,您可以从中获得很多收益。



欢迎分享,转载请注明来源:内存溢出

原文地址: https://outofmemory.cn/zaji/5439979.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2022-12-11
下一篇 2022-12-11

发表评论

登录后才能评论

评论列表(0条)

保存