MySQL 获取某月的所有天数

  • Post author:
  • Post category:mysql


在公司项目中需要统计某月每天的所有数据,可以用一个辅助日历表实现,但是公司不允许建表,只有牺牲性能直接使用SQL语句来构建这个辅助表了。

SELECT ('2020-01-01' - INTERVAL DAY('2020-02-01') DAY) + INTERVAL s DAY AS days
FROM(
SELECT 31 AS s UNION ALL SELECT 30 UNION ALL SELECT 29 
UNION ALL SELECT 28 UNION ALL SELECT 27 UNION ALL SELECT 26 
UNION ALL SELECT 25 UNION ALL SELECT 24 UNION ALL SELECT 23 
UNION ALL SELECT 22 UNION ALL SELECT 21 UNION ALL SELECT 20 
UNION ALL SELECT 19 UNION ALL SELECT 18 UNION ALL SELECT 17 
UNION ALL SELECT 16 UNION ALL SELECT 15 UNION ALL SELECT 14 
UNION ALL SELECT 13 UNION ALL SELECT 12 UNION ALL SELECT 11 
UNION ALL SELECT 10 UNION ALL SELECT 09 UNION ALL SELECT 08 
UNION ALL SELECT 07 UNION ALL SELECT 06 UNION ALL SELECT 05 
UNION ALL SELECT 04 UNION ALL SELECT 03 UNION ALL SELECT 02 
UNION ALL SELECT 01) daytable



版权声明:本文为yq1220原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。