gpt4 book ai didi

mysql - 获取Python或Mysql中2个日期之间经过的所有月份的月份开始日期和结束日期

转载 作者:行者123 更新时间:2023-11-29 19:30:36 25 4
gpt4 key购买 nike

示例:开始日期 20/01/2016结束日期2016年7月28日

需要的结果是:

  1. 2016年1月20日 - 2016年1月31日
  2. 2016年2月1日 - 2016年2月28日
  3. 2016年3月1日 - 2016年3月31日。。.
  4. 2016年7月1日 - 2016年7月28日

最佳答案

查询

SELECT @start := '2016-01-20', @end := '2016-07-28';

SELECT CONCAT(MIN(t.`Date`), ' - ', MAX(t.`Date`)) AS `Dates` FROM
(SELECT ADDDATE(@start, INTERVAL @i:=@i+1 DAY) AS `Date`
FROM
(SELECT a.a
FROM
(SELECT 0 AS a UNION ALL SELECT 1 UNION ALL SELECT 2 UNION ALL SELECT 3 UNION ALL
SELECT 4 UNION ALL SELECT 5 UNION ALL SELECT 6 UNION ALL SELECT 7 UNION ALL
SELECT 8 UNION ALL SELECT 9) AS a
CROSS JOIN
(SELECT 0 AS a UNION ALL SELECT 1 UNION ALL SELECT 2 UNION ALL SELECT 3 UNION ALL
SELECT 4 UNION ALL SELECT 5 UNION ALL SELECT 6 UNION ALL SELECT 7 UNION ALL
SELECT 8 UNION ALL SELECT 9) AS b
CROSS JOIN
(SELECT 0 AS a UNION ALL SELECT 1 UNION ALL SELECT 2 UNION ALL SELECT 3 UNION ALL
SELECT 4 UNION ALL SELECT 5 UNION ALL SELECT 6 UNION ALL SELECT 7 UNION ALL
SELECT 8 UNION ALL SELECT 9) AS c) a
JOIN
(SELECT @i := -1) r1
WHERE @i < DATEDIFF(@end, @start) )t
GROUP BY MONTH(t.`Date`), YEAR(t.`Date`);

关于mysql - 获取Python或Mysql中2个日期之间经过的所有月份的月份开始日期和结束日期,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/41802407/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com