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

> Вычисляет квантиль гистограммы методом линейной интерполяции.

# quantilePrometheusHistogram

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

Добавленный в: v25.10.0

Вычисляет [квантиль](https://en.wikipedia.org/wiki/Quantile) гистограммы с помощью линейной интерполяции с учетом накопленного значения и верхних границ каждого бакета гистограммы.

Чтобы получить интерполированное значение, все переданные значения объединяются в массив, который затем сортируется по соответствующим значениям верхних границ бакетов.
Затем интерполяция квантиля выполняется аналогично функции PromQL [histogram\_quantile()](https://prometheus.io/docs/prometheus/latest/querying/functions/#histogram_quantile) для классической гистограммы с использованием линейной интерполяции по нижней и верхней границам бакета, в котором находится позиция квантиля.

**См. также**

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

**Синтаксис**

```sql theme={null}
quantilePrometheusHistogram(level)(bucket_upper_bound, cumulative_bucket_value)
```

**Параметры**

* `level` — Необязательный параметр. Уровень квантиля. Константное число с плавающей запятой от 0 до 1. Рекомендуется использовать значение `level` в диапазоне `[0.01, 0.99]`. Значение по умолчанию: `0.5`. При `level=0.5` функция вычисляет [медиану](https://en.wikipedia.org/wiki/Median). [`Float64`](/ru/reference/data-types/float)

**Аргументы**

* `bucket_upper_bound` — Верхние границы бакетов гистограммы. У самого большого бакета верхняя граница должна быть `+Inf`. [`Float64`](/ru/reference/data-types/float)
* `cumulative_bucket_value` — Накопленные значения бакетов гистограммы. Значения должны монотонно возрастать по мере увеличения верхней границы бакета. [`(U)Int*`](/ru/reference/data-types/int-uint) или [`Float64`](/ru/reference/data-types/float)

**Возвращаемое значение**

Возвращает квантиль указанного уровня. [`Float64`](/ru/reference/data-types/float)

**Примеры**

**Пример использования**

```sql title=Query theme={null}
SELECT quantilePrometheusHistogram(bucket_upper_bound, cumulative_bucket_value)
FROM VALUES('bucket_upper_bound Float64, cumulative_bucket_value UInt64', (0, 6), (0.5, 11), (1, 14), (inf, 19));
```

```response title=Response theme={null}
┌─quantilePrometheusHistogram(bucket_upper_bound, cumulative_bucket_value)─┐
│                                                                     0.35 │
└──────────────────────────────────────────────────────────────────────────┘
```

**См. также**

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