Les fonctions de fenêtre dans SQL sont des outils puissants qui permettent une analyse de données et des calculs complexes entre des séries de lignes de table. Elles permettent aux utilisateurs d'effectuer des opérations telles que des totaux, des classements et des moyennes mobiles sans avoir besoin de sous-requêtes ou de tables temporaires.

Comprendre les fonctions de la fenêtre

Les fonctions de la fenêtre fonctionnent sur une plage de lignes spécifiée liée à la ligne courante, définie par la clause OVER(). Cela permet de calculer plusieurs lignes dans une partition de données, rendant l'analyse plus efficace et lisible.

Types communs de fonctions de fenêtre

  • RANK() et DENSE RANK(): Assignent le classement aux lignes dans une partition.
  • ROW NUMBER(): Fournit un numéro séquentiel unique pour chaque ligne.
  • LEAD() et LAG(): Accédez aux données des lignes suivantes ou précédentes.
  • SUM(), AVG(), MIN(), MAX(): Fonctions agrégées utilisées comme fonctions de fenêtre pour exécuter les totaux et les moyennes.

Applications pratiques

Les fonctions de la fenêtre sont utilisées dans divers scénarios, comme le calcul des totaux de fonctionnement, la création de classements et l'analyse des tendances au fil du temps.

Exemple : Calcul du total des opérations

La requête SQL suivante montre comment calculer un total de ventes en cours pour chaque produit :