1. 学ぶ
  2. /
  3. コース
  4. /
  5. SQL Server における階層型クエリと再帰クエリ

Connected

演習

1年分の時系列を作成する

この演習の目的は、1年分の日付の系列を作成することです。次の2つの日時関数を使用します。

  • GETDATE()
  • DATEADD(datepart, number, date)

GETDATE() で現在の日時(例: 2019-03-14 20:09:14)を取得し、DATEADD(month, 1, GETDATE()) で現在日時に1か月を加算した値(例: 2019-04-14 20:09:14)を得られます。

1年分の日付の系列を得るには、365回の再帰ステップが必要です。 そのため、反復回数を表す n を OPTION (MAXRECURSION n) で増やしてください。ここで n は反復回数を表します。

指示

100 XP
  • 現在時刻を time として初期化します。
  • CTE を再帰的に選択し、アンカーメンバーと再帰メンバーを正しい句で結合します。
  • 反復回数を「1年の日数 − 1」に制限します。
  • OPTION (MAXRECURSION n) を使って、最大反復回数を1年の日数に増やします。