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

> quantiles, quantilesExactExclusive, quantilesExactInclusive, quantilesGK

# Funções quantiles

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

Introduzido em: v1.1.0

Calcula vários [quantis](https://en.wikipedia.org/wiki/Quantile) aproximados de uma sequência de dados numéricos em diferentes níveis ao mesmo tempo.

Esta função aplica [amostragem por reservatório](https://en.wikipedia.org/wiki/Reservoir_sampling), com tamanho de reservatório de até 8192, e um gerador de números aleatórios para a amostragem.
O resultado não é determinístico.

Usar `quantiles` é mais eficiente do que chamar várias funções `quantile` individualmente quando você precisa de vários valores de quantil, pois todos os quantis são calculados em uma única passagem pelos dados.

**Sintaxe**

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

**Parâmetros**

* `level` — Níveis dos quantis. Um ou mais números de ponto flutuante constantes entre 0 e 1. Recomendamos usar valores de `level` no intervalo `[0.01, 0.99]`. [`Float*`](/pt-BR/reference/data-types/float)

**Argumentos**

* `expr` — Expressão sobre os valores da coluna que resulta em tipos de dados numéricos, Date ou DateTime. [`(U)Int*`](/pt-BR/reference/data-types/int-uint) ou [`Float*`](/pt-BR/reference/data-types/float) ou [`Decimal*`](/pt-BR/reference/data-types/decimal) ou [`Date`](/pt-BR/reference/data-types/date) ou [`DateTime`](/pt-BR/reference/data-types/datetime)

**Valor retornado**

Array de quantis aproximados dos níveis especificados, na mesma ordem em que foram especificados. [`Array(Float64)`](/pt-BR/reference/data-types/array) ou [`Array(Date)`](/pt-BR/reference/data-types/array) ou [`Array(DateTime)`](/pt-BR/reference/data-types/array)

**Exemplos**

**Calculando vários quantis com eficiência**

```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]                     │
└──────────────────────────────────────┘
```
