select B.days from (SELECT one.datys + two.datys AS days FROM (SELECT 00 datys UNION ALL SELECT 01 datys UNION ALL SELECT 02 datys UNION ALL SELECT 03 datys UNION ALL SELECT 04 datys UNION ALL SELECT 05 datys UNION ALL SELECT 06 datys UNION ALL SELECT 07 datys UNION ALL SELECT 08 datys UNION ALL SELECT 09 datys) one CROSS JOIN (SELECT 0 datys UNION ALL SELECT 10 datys UNION ALL SELECT 20 datys UNION ALL SELECT 30 datys) two WHERE (
CASE
when DATEDIFF(date_add(curdate()-day(curdate())+1,interval 1 month ),DATE_ADD(curdate(),interval -day(curdate())+1 day)) = 31 then (one.datys + two.datys) < 32
when DATEDIFF(date_add(curdate()-day(curdate())+1,interval 1 month ),DATE_ADD(curdate(),interval -day(curdate())+1 day)) = 30 then (one.datys + two.datys) < 31
when DATEDIFF(date_add(curdate()-day(curdate())+1,interval 1 month ),DATE_ADD(curdate(),interval -day(curdate())+1 day)) = 29 the
mysql 查询当前月份所有天数
最新推荐文章于 2023-04-24 17:29:08 发布