> ## 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.

> Com a precisão especificada, calcula o quantil de uma sequência de dados numéricos.

# quantileTiming

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

Introduzido em: v1.1.0

Com a precisão especificada, calcula o [quantil](https://en.wikipedia.org/wiki/Quantile) de uma sequência de dados numéricos.

O resultado é determinístico (não depende da ordem de processamento da consulta).
A função é otimizada para trabalhar com sequências que descrevem distribuições, como tempos de carregamento de páginas da web ou tempos de resposta do backend.

Ao usar várias funções `quantile*` com níveis diferentes 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`](/pt-BR/reference/functions/aggregate-functions/quantiles#quantiles).

**Precisão**

O cálculo é preciso se:

* O número total de valores não exceder 5670.
* O número total de valores exceder 5670, mas o tempo de carregamento da página for inferior a 1024 ms.

Caso contrário, o resultado do cálculo é arredondado para o múltiplo de 16 ms mais próximo.

<Note>
  Para calcular quantis de tempo de carregamento de página, esta função é mais eficiente e precisa do que [`quantile`](/pt-BR/reference/functions/aggregate-functions/quantile).
</Note>

<Note>
  Se nenhum valor for passado para a função (ao usar `quantileTimingIf`), [NaN](/pt-BR/reference/data-types/float#nan-and-inf) será retornado. O objetivo disso é diferenciar esses casos daqueles que resultam em zero. Consulte a [cláusula ORDER BY](/pt-BR/reference/statements/select/order-by) para ver observações sobre a ordenação de valores `NaN`.
</Note>

**Sintaxe**

```sql theme={null}
quantileTiming(level)(expr)
```

**Aliases**: `medianTiming`

**Parâmetros**

* `level` — Opcional. Nível do quantil. 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*`](/pt-BR/reference/data-types/float)

**Argumentos**

* `expr` — Expressão sobre os valores de uma coluna que retorna um número do tipo Float\*. Se valores negativos forem passados para a função, o comportamento é indefinido. Se o valor for maior que 30.000 (tempo de carregamento de página superior a 30 segundos), ele será considerado como 30.000. [`Float*`](/pt-BR/reference/data-types/float)

**Valor retornado**

Quantil do nível especificado. Se nenhum valor for passado para a função (ao usar `quantileTimingIf`), será retornado NaN. O objetivo disso é diferenciar esses casos daqueles que resultam em zero. [`Float32`](/pt-BR/reference/data-types/float)

**Exemplos**

**Calculando o quantil de tempo**

```sql title=Query theme={null}
CREATE TABLE t (response_time UInt32) ENGINE = Memory;
INSERT INTO t VALUES (72), (112), (126), (145), (104), (242), (313), (168), (108);

SELECT quantileTiming(response_time) FROM t;
```

```response title=Response theme={null}
┌─quantileTiming(response_time)─┐
│                           126 │
└───────────────────────────────┘
```

**Veja também**

* [median](/pt-BR/reference/functions/aggregate-functions/median)
* [quantiles](/pt-BR/reference/functions/aggregate-functions/quantiles)
