Sobes.tech
Middle

Qu'est-ce que les fonctions de fenêtre en SQL et à quoi servent-elles?

sobes.tech IA

Réponse de l'IA

Les fonctions de fenêtrage (window functions) en SQL sont des fonctions qui effectuent des calculs sur un ensemble de lignes liées à la ligne courante, sans regrouper les résultats en une seule ligne, comme le font les fonctions d'agrégation.

Elles permettent, par exemple, de calculer des sommes mobiles, de classer les lignes, de calculer des totaux cumulés, des moyennes, etc., tout en conservant le nombre original de lignes dans le résultat.

Exemple d'utilisation de la fonction de fenêtrage ROW_NUMBER():

SELECT
    employee_id,
    department_id,
    salary,
    ROW_NUMBER() OVER (PARTITION BY department_id ORDER BY salary DESC) AS rank_in_dept
FROM employees;

Ici, pour chaque employé, son rang par salaire dans le département est calculé, tout en conservant toutes les lignes.

Les fonctions de fenêtrage sont utiles pour l'analyse, la génération de rapports et les calculs complexes où il est nécessaire de voir le contexte de chaque ligne par rapport aux autres.