← SQL — Fonctions de fenêtrage
Leçon 8 / 9 — Chapitre 2: Isoler le top N par groupe
NTILE et filtrage : isoler un quartile précis
Comme les autres fonctions de fenêtre, le résultat de NTILE() (vu au chapitre précédent) se filtre via une sous-requête.
SELECT nom FROM (
SELECT nom,
NTILE(2) OVER (ORDER BY anciennete DESC, id ASC) AS moitie
FROM employes
) t WHERE moitie = 1;
D'après le chapitre précédent, NTILE(2) forme deux groupes de 3 : le groupe 1 contient David, Farid et Amara (les 3 plus anciens). Ce filtre WHERE moitie = 1 isole donc ces 3 lignes.
À retenir :
- Filtrer sur
NTILE()isole un groupe de taille prévisible (ici, la moitié la plus ancienne), contrairement àPERCENT_RANK, qui isole une proportion continue sans garantir un nombre de lignes rond. - Le choix entre
NTILEetPERCENT_RANKpour un filtrage dépend de si l'on veut un nombre de groupes fixe (NTILE) ou un seuil continu sur une échelle 0-1 (PERCENT_RANK).
À vous de jouer : Baptiste apparaît-il dans ce résultat ? Justifiez à partir de son groupe NTILE (vu au chapitre précédent).
🔒
Continuez ce module
Débloquez les leçons restantes ainsi que la certification finale.
2 500 XOF / 3,81 € / 4,15 $
Débloquez les 72 leçons restantes de ce module
Votre paiement est vérifié avant l'activation de l'accès