ホームページ >データベース >mysql チュートリアル >MySQL で指定された 2 つの日付の間の日付のリストを生成するにはどうすればよいですか?
MySQL で 2 つの日付の間の日付のリストを生成します
MySQL は、指定された日付範囲内の日付シーケンスを効率的に生成して、範囲内のすべての日付を取得できる強力な関数を提供します。
MySQL ストアド プロシージャ
ストアド プロシージャを使用して、目的の日付シーケンスを含む time_intervals
という名前の一時テーブルを作成できます:
<code class="language-sql">CREATE PROCEDURE make_intervals(startdate timestamp, enddate timestamp, intval integer, unitval varchar(10)) BEGIN -- ... (存储过程代码,与上面答案中提供的代码相同) END;</code>
使用例
「2009-01-01」から「2009-01-13」までの各日の日付のリストを生成するには、次のコマンドを使用できます:
<code class="language-sql">CALL make_intervals('2009-01-01', '2009-01-13', 1, 'DAY'); SELECT * FROM time_intervals;</code>
出力結果
<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 で指定された 2 つの日付の間の日付のリストを生成するにはどうすればよいですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。