Об'єднання з календарною таблицею
У попередній вправі ми розглядали нову таблицю dbo.Calendar. У цій таблиці містяться попередньо розраховані дані про дати від 1 січня 2000 року до 31 грудня 2049 року. Тепер ми хочемо використати цю календарну таблицю, щоб відфільтрувати іншу таблицю — dbo.IncidentRollup.
Таблиця Incident Rollup містить штучно згенеровані дані, що стосуються інцидентів безпеки у вигаданій компанії.
З попередніх курсів ви можете пам'ятати, як виконувати об'єднання таблиць. Ось приклад об'єднання з календарною таблицею:
SELECT
t.Column1,
t.Column2
FROM dbo.Table t
INNER JOIN dbo.Calendar c
ON t.Date = c.Date;
Ця вправа є частиною курсу
Аналіз часових рядів у SQL Server
Інтерактивна практична вправа
Спробуйте виконати цю вправу, доповнивши цей зразок коду.
SELECT
ir.IncidentDate,
c.FiscalDayOfYear,
c.FiscalWeekOfYear
FROM dbo.___ ir
INNER JOIN dbo.___ c
ON ir.___ = c.___
WHERE
-- Incident type 3
ir.___ = 3
-- Fiscal year 2019
AND c.___ = ___
-- Fiscal quarter 3
AND c.___ = ___;