Passer au contenu principal

quantileExactExclusive

Introduit dans : v20.1.0 Semblable à quantileExact, cette fonction calcule le quantile exact d’une séquence de données numériques. Cette fonction est équivalente à quantileExact, mais utilise la méthode exclusive pour calculer les quantiles, comme décrit dans la méthode R-6. Lors de l’utilisation de cette fonction, le quantile est calculé de sorte que la formule d’interpolation pour un quantile donné p prenne la forme suivante : x[floor(n*p)] + (n*p - floor(n*p)) * (x[floor(n*p)+1] - x[floor(n*p)]), où x est le tableau trié. Pour obtenir la valeur exacte, toutes les valeurs transmises sont regroupées dans un tableau, qui est ensuite entièrement trié. La complexité de l’algorithme de tri est de O(N·log(N)), où N = std::distance(first, last) comparaisons. Lors de l’utilisation de plusieurs fonctions quantile* avec différents niveaux dans une requête, les états internes ne sont pas combinés (c’est-à-dire que la requête est moins efficace qu’elle pourrait l’être). Dans ce cas, utilisez la fonction quantiles. Syntaxe
quantileExactExclusive(level)(expr)
Paramètres
  • level — Niveau du quantile. Nombre constant à virgule flottante compris entre 0 et 1 (exclus). Nous recommandons d’utiliser une valeur level dans l’intervalle (0.01, 0.99). Float*
Arguments
  • expr — Expression sur les valeurs de la colonne produisant des types de données numériques, Date ou DateTime. (U)Int* ou Float* ou Decimal* ou Date ou DateTime
Valeur renvoyée Renvoie le quantile du niveau spécifié. Float64 Exemples Calcul du quantile exclusif exact
Query
SELECT quantileExactExclusive(0.25)(number) FROM numbers(5);
Response
┌─quantileExactExclusive(0.25)(number)─┐
│                                  0.5 │
└──────────────────────────────────────┘
Calcul de plusieurs niveaux de quantile
Query
SELECT quantileExactExclusive(0.1)(number), quantileExactExclusive(0.9)(number) FROM numbers(10);
Response
┌─quantileExactExclusive(0.1)(number)─┬─quantileExactExclusive(0.9)(number)─┐
│                                 0.4 │                                 8.6 │
└─────────────────────────────────────┴─────────────────────────────────────┘
Dernière modification le 25 juin 2026