Skip to content
ClickHouse Docs
ClickHouse DocsClickHouse Docs

quantile

quantile

Introduced in: v1.1.0

Calcula um quantile aproximado de uma sequência de dados numéricos.

Esta função aplica sampling por reservatório com um reservatório de até 8192 e um gerador de números aleatórios para a amostragem. O resultado não é determinístico. Para obter um quantile exato, use a função quantileExact.

Ao usar várias funções quantile* com diferentes níveis em uma consulta, os estados internos não são combinados (ou seja, a consulta é executada com menos eficiência do que poderia). Nesse caso, use a função quantiles.

Observe que, para uma sequência numérica vazia, quantile retornará NaN, mas suas variantes quantile* retornarão NaN ou um valor padrão para o tipo da sequência, dependendo da variante.

Sintaxe

quantile(level)(expr)

Aliases: median

Parâmetros

  • level — Opcional. Nível do quantile. Número de ponto flutuante constante de 0 a 1. Recomendamos usar um valor de level no intervalo [0.01, 0.99]. Valor padrão: 0.5. Em level=0.5, a função calcula a mediana. Float

Argumentos

Valor retornado

Quantile aproximado do nível especificado. Argumentos numéricos produzem Float64, enquanto argumentos Decimal, Date, DateTime e DateTime64 mantêm seu formato de entrada. Float64 ou Decimal* ou Date ou DateTime ou DateTime64

Exemplos

Cálculo do quantile

CREATE TABLE t (val UInt32) ENGINE = Memory;
INSERT INTO t VALUES (1), (1), (2), (3);

SELECT quantile(val) FROM t;
┌─quantile(val)─┐
│           1.5 │
└───────────────┘

Veja também

Navigation