Jointure avec une table de calendrier
Dans l’exercice précédent, nous avons découvert une nouvelle table, dbo.Calendar. Cette table contient des informations de date pré-calculées allant du 1er janvier 2000 au 31 décembre 2049. Nous allons maintenant utiliser cette table de calendrier pour filtrer une autre table, dbo.IncidentRollup.
La table Incident Rollup contient des données générées artificiellement sur des incidents de sécurité dans une entreprise fictive.
Vous vous souvenez peut-être, grâce aux cours prérequis, comment réaliser des jointures entre tables. Voici un exemple de jointure avec une table de calendrier :
SELECT
t.Column1,
t.Column2
FROM dbo.Table t
INNER JOIN dbo.Calendar c
ON t.Date = c.Date;
Cet exercice fait partie du cours
<cours>Analyse de séries temporelles dans SQL Server</cours>Exercice interactif pratique
Essayez cet exercice en complétant ce code d’exemple.
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.___ = ___;