Leçon 3 / 9 — Chapitre 2: Isoler le top N par groupe
CUME_DIST() : la proportion de valeurs à ce niveau ou au-delà
CUME_DIST() renvoie, pour chaque ligne, la proportion de lignes de la partition qui la précèdent ou qui lui sont égales (« peer »), selon l'ordre indiqué — une mesure de distribution cumulative.
SELECT nom, anciennete,
CUME_DIST() OVER (ORDER BY anciennete DESC) AS proportion
FROM employes;
Pour Amara (5 ans) : les lignes avec une ancienneté ≥ 5 sont David, Farid et Amara elle-même — 3 lignes sur 6, soit proportion = 3/6 = 0.5. Pour Elise (2 ans, la moins ancienne) : toutes les lignes ont une ancienneté ≥ 2, soit 6/6 = 1.
À retenir :
CUME_DIST()renvoie une proportion (entre une fraction et 1) représentant la place d'une ligne dans la distribution cumulative.- Les lignes ex-aequo partagent toujours la même valeur de CUME_DIST, puisqu'elles comptent ensemble dans le calcul.
- La dernière place (au sens large, en cas d'ex-aequo) reçoit toujours exactement
1.
À vous de jouer : combien de lignes ont une ancienneté ≥ 7 (la valeur de David) ? Cette valeur est le numérateur utilisé pour calculer son CUME_DIST.
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