ConsigneSur la table ventes, affiche pour chaque vente son écart au montant moyen de sa catégorie (colonne ecart_moyenne_cat, arrondie à 2 décimales), grâce à une fonction fenêtre par catégorie. Colonnes : produit, categorie, montant, ecart_moyenne_cat. Trie par categorie, puis montant décroissant.
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 ecartFROM 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 →