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

SQL で昨年をカバーする日付範囲を生成するにはどうすればよいですか?

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

How to Generate a Date Range Covering the Last Year in SQL?

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

質問:

どのようにリストを生成できますか?日付を必要とする SQL クエリで使用するために、過去 1 年にわたる日付パラメータ?

答え:

SQL を使用して日付の範囲を生成するには、さまざまな方法を使用できます。効率的なアプローチの 1 つは、以下に示すように CONNECT BY 句を利用することです。

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

このクエリは、過去 365 日を表す 366 個の日付のリストを生成します。 TRUNC 関数は、日付を切り捨てて時刻コンポーネントを削除し、日付値のみを残します。

DUAL テーブルを CONNECT BY と組み合わせて使用​​すると、指定された条件 (ROWNUM <) に基づいて一連の行を生成できます。 ; この場合は 366)。各行は、指定された範囲内の単一の日付を表します。

このメソッドは、追加のテーブルや複雑なロジックを必要とせず、SQL クエリで使用する日付の範囲を生成するための簡単で効率的なソリューションを提供します。

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

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