CommencerCommencer gratuitement

Obtenir la première et la dernière valeur

Les fonctions analytiques qui renvoient la première ou la dernière valeur d’une liste ordonnée sont très utiles dans les requêtes. Dans cet exercice, vous allez vous familiariser avec elles. La syntaxe est la suivante :

  • FIRST_VALUE(numeric_expression) OVER ([PARTITION BY column] ORDER BY column ROW_or_RANGE frame)

  • LAST_VALUE(numeric_expression) OVER ([PARTITION BY column] ORDER BY column ROW_or_RANGE frame)

Vous allez écrire une requête pour récupérer tous les électeurs d’Espagne et des États‑Unis. Ensuite, vous ajouterez dans votre requête des instructions pour récupérer la date de naissance de l’électeur le plus jeune et du plus âgé pour chaque pays. Vous souhaitez voir ces valeurs sur chaque ligne afin de pouvoir les comparer avec la date de naissance de chaque électeur.

Cet exercice fait partie du cours

Fonctions de manipulation des données dans SQL Server

Afficher le cours

Instructions

  • Récupérez la date de naissance de l’électeur le plus âgé pour chaque pays.
  • Récupérez la date de naissance de l’électeur le plus jeune pour chaque pays.

Exercice interactif pratique

Essayez cet exercice en complétant cet exemple de code.

SELECT 
	first_name + ' ' + last_name AS name,
	country,
	birthdate,
	-- Retrieve the birthdate of the oldest voter per country
	___(birthdate) 
	OVER (PARTITION BY ___ ORDER BY ___) AS oldest_voter,
	-- Retrieve the birthdate of the youngest voter per country
	___(___) 
		OVER (___ country ORDER BY ___ ROWS BETWEEN UNBOUNDED PRECEDING AND UNBOUNDED FOLLOWING
				) AS youngest_voter
FROM voters
WHERE country IN ('Spain', 'USA');
Modifier et exécuter le code