mysql给定两个时间段 获取两个时间段的所有日期
sql 第一种写法
SELECT * FROM
(SELECT ADDDATE('1970-01-01',t4.i*10000 + t3.i*1000 + t2.i*100 + t1.i*10 + t0.i) selected_date FROM
(SELECT 0 i UNION SELECT 1 UNION SELECT 2 UNION SELECT 3 UNION SELECT 4 UNION SELECT 5 UNION SELECT 6 UNION SELECT 7 UNION SELECT 8 UNION SELECT 9) t0,
(SELECT 0 i UNION SELECT 1 UNION SELECT 2 UNION SELECT 3 UNION SELECT 4 UNION SELECT 5 UNION SELECT 6 UNION SELECT 7 UNION SELECT 8 UNION SELECT 9) t1,
(SELECT 0 i UNION SELECT 1 UNION SELECT 2 UNION SELECT 3 UNION SELECT 4 UNION SELECT 5 UNION SELECT 6 UNION SELECT 7 UNION SELECT 8 UNION SELECT 9) t2,
(SELECT 0 i UNION SELECT 1 UNION SELECT 2 UNION SELECT 3 UNION SELECT 4 UNION SELECT 5 UNION SELECT 6 UNION SELECT 7 UNION SELECT 8 UNION SELECT 9) t3,
(SELECT 0 i UNION SELECT 1 UNION SELECT 2 UNION SELECT 3 UNION SELECT 4 UNION SELECT 5 UNION SELECT 6 UNION SELECT 7 UNION SELECT 8 UNION SELECT 9) t4)
v
WHERE selected_date BETWEEN '2021-01-10' AND '2022-01-30'
ORDER BY selected_date DESC;
mysql 第二种写法
SELECT DATE_FORMAT( DATE_ADD(CONCAT('2020-01-01'), INTERVAL(help_topic_id) DAY),'%Y-%m-%d') DT
FROM mysql.help_topic
WHERE help_topic_id <= TIMESTAMPDIFF(DAY,CONCAT('2020-01-01'),CONCAT('2021-12-01'))
ORDER BY DT DESC;
版权声明:本文为qq_43419105原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接和本声明。