ホームページ >データベース >mysql チュートリアル >SQL で 365 日の日付範囲を効率的に生成するにはどうすればよいですか?

SQL で 365 日の日付範囲を効率的に生成するにはどうすればよいですか?

Patricia Arquette
Patricia Arquetteオリジナル
2025-01-06 17:25:42660ブラウズ

How to Efficiently Generate a 365-Day Date Range in SQL?

SQL を使用した日付範囲の生成

SQL 実行の日付範囲を生成するには、一般的な要件は、特定の期間にわたって反復することです。 。このシナリオの目的は、過去 365 日のリストを作成することです。

従来は、数値 (0 ~ 364 など) を使用して日のリストを作成することが実行可能なソリューションです。ただし、より効率的なアプローチを使用すると、大規模なテーブルや追加の操作が不要になります。

過去 365 日間の日付範囲を生成する最適な SQL クエリは次のとおりです。

SELECT TRUNC (SYSDATE - ROWNUM) dt
  FROM DUAL CONNECT BY ROWNUM < 366

このクエリTRUNC 関数を利用して、現在の日付 (SYSDATE) から増分 ROWNUM 値を減算して、各行の日付を決定します。 CONNECT BY 句は、条件で指定された数の行 (この場合は ROWNUM

結果は、過去 365 日を表す日付のリストです。このリストはサブクエリまたは結合で利用して、指定された期間のデータを取得できます。

以上がSQL で 365 日の日付範囲を効率的に生成するにはどうすればよいですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。