始める無料で始める

LAGで期間を比較する

Idaho のフィールドオフィスは、選択した各テスト期間(年と月)に実施されたテスト件数を確認し、直前の期間と比較したいと考えています。まずは Minidoka 郡のテストサイト 13903 から始めます。

この演習はコースの一部です

Redshift入門

コースを見る

演習の手順

  • CTE minidoka_13903 を作成し、idaho_sample からすべての列を選択するとともに、station 13903 を対象に sample_date を日付に変換した追加列(date_sampled)を作成します。
  • メインのクエリでは次を行います:
    • 現在の月のレコード件数をカウントする
    • ウィンドウ関数を使って前月のレコード件数をカウントする。

実践的なインタラクティブ演習

このサンプルコードを完成させて、この演習に挑戦してみましょう。

WITH minidoka_13903 AS (
    SELECT *,
           -- Converts the sample_date to a date
           ___(___ AS ___) as date_sampled
    FROM public_intro_redshift.idaho_samples
    WHERE fk_monitoringlocation = 13903
)
SELECT DATE_PART('year', date_sampled) as sample_year,
       DATE_PART('month', date_sampled) as sample_month,
       -- Count the records
       ___,
       -- Count the records for the prior month
       ___(___, ___) OVER (
           ORDER BY DATE_PART('year', date_sampled),
                    DATE_PART('month', date_sampled)
       ) AS prior_readings
  -- Use the prefiltered CTE you created above
  FROM ___
 GROUP BY sample_year,
          sample_month
 ORDER BY sample_year DESC,
          sample_month DESC;
コードを編集して実行