Aller au contenu

Fonction d’agrégation.

La fonction QUANTILE_DISC() calcule le quantile exact d’une séquence de données numériques. QUANTILE est un alias de QUANTILE_DISC.

func.quantile_disc(<levels>, <expr>)
func.quantile_disc([0.25, 0.75], table.salary).alias('salary_quantiles')
| salary_quantiles |
|---------------------|
| [55000.0, 65000.0] |
QUANTILE_DISC(<levels>)(<expr>)
QUANTILE_DISC(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

InputType ou tableau de InputType selon le nombre de niveaux.

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

CREATE TABLE salary_data (
id INT,
employee_id INT,
salary FLOAT
);
INSERT INTO salary_data (id, employee_id, salary)
VALUES (1, 1, 50000),
(2, 2, 55000),
(3, 3, 60000),
(4, 4, 65000),
(5, 5, 70000);

Exemple de requête : calculer les 25e et 75e centiles des salaires

SELECT QUANTILE_DISC(0.25, 0.75)(salary) AS salary_quantiles
FROM salary_data;

Résultat

| salary_quantiles |
|---------------------|
| [55000.0, 65000.0] |