ホームページ >データベース >mysql チュートリアル >MySQL 選択クエリを使用して日付範囲を取得する方法?
MySQL SELECT ステートメントを使用して日付範囲を取得します
多くのアプリケーションでは、指定された範囲内の日付のリストを取得する機能が必要です。 MySQL では、これを実現する方法がいくつかありますが、その 1 つは SELECT ステートメントを使用することです。
たとえば、2012 年 2 月 10 日から 2012 年 2 月 15 日までのすべての日付をリストする必要があります。これを行うには、次のクエリを使用できます:
<code class="language-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 '2012-02-10' AND '2012-02-15'</code>
このクエリは、ネストされた SELECT ステートメントを使用して、「1970-01-01」から現在の日付までの日付範囲を生成します。次に、生成される日付を指定された範囲に制限します。
このアプローチの利点は、実装が比較的簡単で、300 年近く先までの日付範囲を処理できることです。
以上がMySQL 選択クエリを使用して日付範囲を取得する方法?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。