ReferenceSQL ReferenceAggregate Functions

quantileDD

Computes an approximate [quantile](https://en.

Computes an approximate quantile of a sample with relative-error guarantees. It works by building a DD.

Syntax

quantileDD(relative_accuracy, [level])(expr)

Parameters

  • relative_accuracy — Relative accuracy of the quantile. Possible values are in the range from 0 to 1. The size of the sketch depends on the range of the data and the relative accuracy. The larger the range and the smaller the relative accuracy, the larger the sketch. The rough memory size of the sketch is log(max_value/min_value)/relative_accuracy. The recommended value is 0.001 or higher. Float*
  • level — Optional. Level of quantile. Possible values are in the range from 0 to 1. Default value: 0.5. Float*

Arguments

Returned value

Approximate quantile of the specified level. Float64

Examples

Computing quantile with DD sketch

CREATE TABLE example_table (a UInt32, b Float32) ENGINE = Memory;
INSERT INTO example_table VALUES (1, 1.001), (2, 1.002), (3, 1.003), (4, 1.004);

SELECT quantileDD(0.01, 0.75)(a), quantileDD(0.01, 0.75)(b) FROM example_table;
┌─quantileDD(0.01, 0.75)(a)─┬─quantileDD(0.01, 0.75)(b)─┐
│        2.974233423476717  │                      1.01 │
└───────────────────────────┴───────────────────────────┘

Introduced in version 24.1.