CommencerCommencez gratuitement

Synthétiser des données sur une période

SQL Server propose plusieurs fonctions d’agrégation utiles pour synthétiser les données sur des périodes et en tirer des informations. Dans l’exemple suivant, vous allez examiner un ensemble de rapports d’incidents d’une entreprise fictive. Les incidents ont déjà été agrégés au niveau quotidien, ce qui nous donne un nombre d’incidents par type et par jour. Nous souhaitons aller plus loin et analyser les incidents sur une période de trois mois, du 1er août au 31 octobre, afin d’obtenir des premiers enseignements grâce à l’agrégation.

Les principales fonctions d’agrégation que nous utiliserons sont COUNT(), SUM(), MIN() et MAX(). Dans l’Exercice suivant, nous verrons quelques fonctions d’agrégation statistiques.

Cet exercice fait partie du cours

<cours>Analyse de séries temporelles dans SQL Server</cours>
Voir le cours

Instructions de l’exercice

  • Complétez avec la fonction d’agrégation appropriée en fonction du nom de la colonne. Choisissez pour chacune parmi COUNT(), SUM(), MIN() et MAX().

Exercice interactif pratique

Essayez cet exercice en complétant ce code d’exemple.

-- Fill in the appropriate aggregate functions
SELECT
	it.IncidentType,
	___(1) AS NumberOfRows,
	___(ir.NumberOfIncidents) AS TotalNumberOfIncidents,
	___(ir.NumberOfIncidents) AS MinNumberOfIncidents,
	___(ir.NumberOfIncidents) AS MaxNumberOfIncidents,
	___(ir.IncidentDate) As MinIncidentDate,
	___(ir.IncidentDate) AS MaxIncidentDate
FROM dbo.IncidentRollup ir
	INNER JOIN dbo.IncidentType it
		ON ir.IncidentTypeID = it.IncidentTypeID
WHERE
	ir.IncidentDate BETWEEN '2019-08-01' AND '2019-10-31'
GROUP BY
	it.IncidentType;
Modifier et exécuter le code