> ## Documentation Index
> Fetch the complete documentation index at: https://private-7c7dfe99-mintlify-8c05c8a2.mintlify.site/llms.txt
> Use this file to discover all available pages before exploring further.

> quantiles, quantilesExactExclusive, quantilesExactInclusive, quantilesGK

# Fonctions quantiles

<div id="quantiles">
  ## quantiles
</div>

Introduit dans : v1.1.0

Calcule simultanément plusieurs [quantiles](https://en.wikipedia.org/wiki/Quantile) approximatifs d’une séquence de données numériques, à différents niveaux.

Cette fonction utilise un [échantillonnage en réservoir](https://en.wikipedia.org/wiki/Reservoir_sampling), avec une taille de réservoir pouvant atteindre 8192, ainsi qu’un générateur de nombres aléatoires pour l’échantillonnage.
Le résultat n’est pas déterministe.

L’utilisation de `quantiles` est plus efficace que l’appel de plusieurs fonctions `quantile` distinctes lorsque vous avez besoin de plusieurs valeurs de quantile, car tous les quantiles sont calculés en un seul parcours des données.

**Syntaxe**

```sql theme={null}
quantiles(level1, level2, ...)(expr)
```

**Paramètres**

* `level` — Niveaux de quantile. Un ou plusieurs nombres à virgule flottante constants compris entre 0 et 1. Nous recommandons d’utiliser des valeurs de `level` dans l’intervalle `[0.01, 0.99]`. [`Float*`](/fr/reference/data-types/float)

**Arguments**

* `expr` — Expression appliquée aux valeurs de la colonne, renvoyant un type de données numérique, Date ou DateTime. [`(U)Int*`](/fr/reference/data-types/int-uint) ou [`Float*`](/fr/reference/data-types/float) ou [`Decimal*`](/fr/reference/data-types/decimal) ou [`Date`](/fr/reference/data-types/date) ou [`DateTime`](/fr/reference/data-types/datetime)

**Valeur renvoyée**

Tableau de quantiles approximatifs pour les niveaux spécifiés, dans le même ordre que celui des niveaux indiqués. [`Array(Float64)`](/fr/reference/data-types/array) ou [`Array(Date)`](/fr/reference/data-types/array) ou [`Array(DateTime)`](/fr/reference/data-types/array)

**Exemples**

**Calcul efficace de plusieurs quantiles**

```sql title=Query theme={null}
CREATE TABLE t (val UInt32) ENGINE = Memory;
INSERT INTO t VALUES (1), (1), (2), (3), (4), (5), (6), (7), (8), (9), (10);

SELECT quantiles(0.25, 0.5, 0.75, 0.9)(val) FROM t;
```

```response title=Response theme={null}
┌─quantiles(0.25, 0.5, 0.75, 0.9)(val)─┐
│ [3, 5.5, 8, 9.5]                     │
└──────────────────────────────────────┘
```
