Aller au contenu

Fonction d’agrégation.

La fonction QUANTILE_CONT() calcule le quantile interpolé d’une séquence de données numériques.

func.quantile_cont(<levels>, <expr>)
func.quantile_cont(0.5, table.sales_amount).alias('median_sales_amount')
| median_sales_amount |
|-----------------------|
| 6000.0 |
QUANTILE_CONT(<levels>)(<expr>)
QUANTILE_CONT(level1, level2, ...)(<expr>)
Arguments Description
<level(s) Niveau(x) du quantile. Chaque niveau est un nombre à virgule flottante constant compris entre 0 et 1. Nous recommandons d’utiliser une valeur de niveau comprise entre 0,01 et 0,99
<expr> Toute expression numérique

Float64 ou tableau de float64 selon le nombre de niveaux.

Créer une table et insérer des données d’exemple

CREATE TABLE sales_data (
id INT,
sales_person_id INT,
sales_amount FLOAT
);
INSERT INTO sales_data (id, sales_person_id, sales_amount)
VALUES (1, 1, 5000),
(2, 2, 5500),
(3, 3, 6000),
(4, 4, 6500),
(5, 5, 7000);

Exemple de requête : calculer le 50e centile (médiane) du montant des ventes par interpolation

SELECT QUANTILE_CONT(0.5)(sales_amount) AS median_sales_amount
FROM sales_data;

Résultat

| median_sales_amount |
|-----------------------|
| 6000.0 |