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

> With the determined precision computes the quantile of a numeric data sequence according to the weight of each sequence member.

# quantilesTimingWeighted

<h2 id="quantilesTimingWeighted">
  quantilesTimingWeighted
</h2>

Introduced in: v1.1.0

Computes multiple [quantiles](https://en.wikipedia.org/wiki/Quantile) of a numeric data sequence at different levels simultaneously with determined precision, taking into account the weight of each sequence member.

This function is equivalent to [`quantileTimingWeighted`](/reference/functions/aggregate-functions/quantileTimingWeighted) but allows computing multiple quantile levels in a single pass, which is more efficient than calling individual quantile functions.

The result is deterministic (it does not depend on the query processing order). The function is optimized for working with sequences which describe distributions like loading web pages times or backend response times.

**Accuracy**

The calculation is accurate if:

* Total number of values does not exceed 5670.
* Total number of values exceeds 5670, but the page loading time is less than 1024ms.

Otherwise, the result of the calculation is rounded to the nearest multiple of 16 ms.

<Note>
  For calculating page loading time quantiles, this function is more effective and accurate than [`quantiles`](/reference/functions/aggregate-functions/quantiles).
</Note>

**Syntax**

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

**Parameters**

* `level` — Levels of quantiles. One or more constant floating-point numbers from 0 to 1. We recommend using `level` values in the range of `[0.01, 0.99]`. [`Float*`](/reference/data-types/float)

**Arguments**

* `expr` — Expression over a column values returning a Float\*-type number. If negative values are passed to the function, the behavior is undefined. If the value is greater than 30,000 (a page loading time of more than 30 seconds), it is assumed to be 30,000. [`Float*`](/reference/data-types/float)
* `weight` — Column with weights of sequence elements. Weight is a number of value occurrences. [`UInt*`](/reference/data-types/int-uint)

**Returned value**

Array of quantiles of the specified levels in the same order as the levels were specified. [`Array(Float32)`](/reference/data-types/array)

**Examples**

**Computing multiple weighted timing quantiles**

```sql title=Query theme={null}
SELECT quantilesTimingWeighted(0.5, 0.99)(response_time, weight) FROM t;
```

```response title=Response theme={null}
┌─quantilesTimingWeighted(0.5, 0.99)(response_time, weight)─┐
│ [112, 162]                                                │
└───────────────────────────────────────────────────────────┘
```

**See Also**

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