Une fonction fenêtre avec over (partition BY x) calcule une valeur par groupe sans fusionner les lignes : chaque ligne garde son détail ET voit l'agrégat de son groupe.
Syntaxe
AVG(col) OVER (PARTITION BY groupe)Difference avec group BY : group BY réduit a une ligne par groupe ; over conserve toutes les lignes.
Exemple (table produits) :
SELECT nom, categorie, prix,
prix - AVG(prix) OVER (PARTITION BY categorie) AS ecart
FROM produits;
-> chaque produit avec son ecart au prix moyen de sa categorieEnvie d'aller plus loin ? Découvrez nos formations certifiées Bac+2 à Bac+5 →