Sobes.tech
Middle

Que renvoient les fonctions agrégées et non agrégées dans une requête SQL ?

sobes.tech IA

Réponse de l'IA

Les fonctions d'agrégation en SQL renvoient une seule valeur, qui est le résultat du calcul sur un groupe de lignes. Par exemple, les fonctions SUM(), COUNT(), AVG(), MAX(), MIN() agrègent les données et renvoient une valeur finale.

Les fonctions non agrégées (fonctions scalaires) s'appliquent à des valeurs individuelles et renvoient un résultat pour chaque ligne. Par exemple, les fonctions de traitement de chaînes (UPPER(), LOWER()), les fonctions mathématiques (ABS(), ROUND()) renvoient une valeur transformée pour chaque enregistrement.

Exemple:

SELECT department_id, COUNT(*) AS employee_count
FROM employees
GROUP BY department_id;

Ici, COUNT(*) est une fonction d'agrégation qui renvoie le nombre d'employés dans chaque département.

En revanche:

SELECT employee_name, UPPER(employee_name) AS name_upper
FROM employees;

UPPER() est une fonction non agrégée qui renvoie une valeur transformée pour chaque ligne.