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;