ПочатиПочніть безкоштовно

Порівняння періодів за допомогою lag

Польовий офіс Айдахо хоче побачити, скільки тестів виконують у кожному періоді тестування (рік і місяць), коли його вибрано, і порівняти це з попереднім періодом. Вони хочуть почати з тестового майданчика 13903 в окрузі Мінідока.

Ця вправа є частиною курсу

Вступ до Redshift

Переглянути курс

Інструкції до вправи

  • Створіть CTE minidoka_13903, вибравши всі стовпці з idaho_sample і перетворивши sample_date на тип date як додатковий стовпець (date_sampled) для станції 13903.
  • У головному запиті:
    • Порахуйте записи для поточного місяця
    • Порахуйте записи для попереднього місяця за допомогою віконної функції.

Інтерактивна практична вправа

Спробуйте виконати цю вправу, доповнивши цей зразок коду.

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;
Редагувати та запускати код