首页 > 数据库 > mysql教程 > 如何在 MySQL 中生成两个给定日期之间的日期列表?

如何在 MySQL 中生成两个给定日期之间的日期列表?

Linda Hamilton
发布: 2025-01-22 04:41:08
原创
457 人浏览过

How Can I Generate a List of Dates in MySQL Between Two Given Dates?

在MySQL中生成两个日期之间的日期列表

MySQL 提供了强大的函数,可以高效地生成指定日期范围内的日期序列,从而检索该范围内的所有日期。

MySQL存储过程

可以使用存储过程创建一个名为time_intervals的临时表,其中包含所需的日期序列:

CREATE PROCEDURE make_intervals(startdate timestamp, enddate timestamp, intval integer, unitval varchar(10))
BEGIN
  -- ... (存储过程代码,与上面答案中提供的代码相同)
END;
登录后复制

使用方法示例

要生成'2009-01-01'和'2009-01-13'之间每天的日期列表,可以使用以下命令:

CALL make_intervals('2009-01-01', '2009-01-13', 1, 'DAY');

SELECT * FROM time_intervals;
登录后复制

输出结果

<code>interval_start      interval_end        
------------------- ------------------- 
2009-01-01 00:00:00 2009-01-01 23:59:59 
2009-01-02 00:00:00 2009-01-02 23:59:59 
2009-01-03 00:00:00 2009-01-03 23:59:59 
2009-01-04 00:00:00 2009-01-04 23:59:59 
2009-01-05 00:00:00 2009-01-05 23:59:59 
2009-01-06 00:00:00 2009-01-06 23:59:59 
2009-01-07 00:00:00 2009-01-07 23:59:59 
2009-01-08 00:00:00 2009-01-08 23:59:59 
2009-01-09 00:00:00 2009-01-09 23:59:59 
2009-01-10 00:00:00 2009-01-10 23:59:59 
2009-01-11 00:00:00 2009-01-11 23:59:59 
2009-01-12 00:00:00 2009-01-12 23:59:59 
2009-01-13 00:00:00 2009-01-13 23:59:59</code>
登录后复制

以上是如何在 MySQL 中生成两个给定日期之间的日期列表?的详细内容。更多信息请关注PHP中文网其他相关文章!

本站声明
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn
作者最新文章
热门教程
更多>
最新下载
更多>
网站特效
网站源码
网站素材
前端模板