Cette page a été traduite de l'anglais avec l'aide de l'IA. En cas de divergence, la version anglaise fait référence.
PERCENT_RANK
Renvoie une valeur comprise entre 0.0 et 1.0 représentant le rang relatif de la ligne courante au sein de sa partition.
Malgré son nom, cette fonction renvoie une valeur égale à (rank - 1) / (partition-rows - 1), où rank est la valeur renvoyée par la fonction de fenêtrage intégrée RANK() et partition-rows est le nombre total de lignes de la partition. Si la partition ne contient qu'une seule ligne, cette fonction renvoie 0.0.
Voir aussi :
[SELECT] [RANK] [CUME_DIST]
Syntaxe
SELECT PERCENT_RANK() OVER ([PARTITION BY column] ORDER BY column [ASC|DESC])
FROM <multipartIdentifier>;
Arguments
PARTITION BY column
Facultatif. Divise le jeu de résultats en partitions. La fonction PERCENT_RANK est appliquée à chaque partition séparément.
ORDER BY column Spécifie l'ordre dans lequel les rangs centiles sont calculés.
Valeur(s) renvoyée(s)
Renvoie un nombre à virgule flottante compris entre 0.0 et 1.0 représentant le rang centile.
Exemples
Calculer le rang centile des contributeurs
-- Calculate percentile ranking of contributors
SELECT
login,
contributions,
PERCENT_RANK() OVER (ORDER BY contributions) as percentile,
CUME_DIST() OVER (ORDER BY contributions) as cumulative_dist
FROM github.repos.contributors
WHERE owner = 'stackql'
AND repo = 'stackql'
ORDER BY contributions DESC;
Une valeur PERCENT_RANK de 0.0 indique la ligne la moins bien classée, tandis que 1.0 indique la ligne la mieux classée. Utilisez cette fonction pour déterminer où se situe une valeur donnée au sein d'une distribution.
Pour plus d'informations, consultez https://sqlite.org/windowfunctions.html#built-in_window_functions.