Skip to content
ClickHouse Docs
ClickHouse DocsClickHouse Docs

quantileBFloat16

quantileBFloat16

Introduit dans : v21.7.0

Calcule un quantile approximatif d’un échantillon composé de nombres bfloat16.

bfloat16 est un type de données à virgule flottante avec 1 bit de signe, 8 bits d’exposant et 7 bits de fraction. La fonction convertit les valeurs d’entrée en nombres à virgule flottante de 32 bits et conserve les 16 bits de poids fort. Elle calcule ensuite la valeur du quantile bfloat16, puis convertit le résultat en nombre à virgule flottante de 64 bits en ajoutant des bits nuls. La fonction est un estimateur rapide de quantile, avec une erreur relative maximale de 0.78125% (et une erreur relative moyenne d’environ 0.27%), correspondant à la précision de mantisse sur 7 bits de bfloat16.

Syntaxe

quantileBFloat16[(level)](expr)

Alias : medianBFloat16

Paramètres

  • level — Facultatif. Niveau du quantile. Les valeurs possibles vont de 0 à 1. Valeur par défaut : 0.5. Float*

Arguments

  • expr — Expression sur les valeurs de la colonne produisant des types de données numériques, Date ou DateTime. (U)Int* ou Float* ou Date ou DateTime

Valeur renvoyée

Quantile approximatif du niveau spécifié. Pour les entrées Date et DateTime, le format de sortie correspond au format d’entrée. Float64 ou Date ou DateTime

Exemples

Calcul du quantile en bfloat16

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 quantileBFloat16(0.75)(a), quantileBFloat16(0.75)(b) FROM example_table;
┌─quantileBFloat16(0.75)(a)─┬─quantileBFloat16(0.75)(b)─┐
│                         3 │                         1 │
└───────────────────────────┴───────────────────────────┘

Voir aussi

Navigation