Exercice 32 / 60

LAG et LEAD

Sur la table ventes (colonnes date_vente, montant), affiche pour chaque vente le montant de la vente précédente et de la suivante, triées par date_vente. Nomme les colonnes vente_precedente et vente_suivante.

lag() renvoie la valeur de la ligne précédente, lead() celle de la ligne suivante. Idéal pour comparer une ligne a ses voisines. Syntaxe : lag(colonne) over (order BY col)

LAG regarde la ligne précédente et LEAD la suivante : chaque ligne peut ainsi se comparer à ses deux voisines

Exemple (table commandes) :

SELECT date_commande, montant, LAG(montant) OVER (ORDER BY date_commande) AS commande_precedente, LEAD(montant) OVER (ORDER BY date_commande) AS commande_suivante FROM commandes; -> chaque commande avec la précédente et la suivante (calcul d'évolution)
ventes
idproduitmontantdate_ventecategorieclient_id
query.sql

Envie d'aller plus loin ? Découvrez nos formations certifiées Bac+2 à Bac+5 →