PaliSkill
← SQL Intermédiaire

Leçon 4 / 8 — Chapitre 10: Mise en pratique : restaurant

INTERSECT / EXCEPT : plats commandés cette semaine vs la précédente

Comme au chapitre 4, INTERSECT et EXCEPT comparent deux ensembles de résultats — ici, les plats commandés selon la semaine.

SELECT plat_id FROM tickets WHERE semaine = 'cette_semaine'
INTERSECT
SELECT plat_id FROM tickets WHERE semaine = 'semaine_derniere';

Plats commandés cette semaine : {1, 2, 3, 5}. Plats commandés la semaine dernière : {1, 2, 4}. INTERSECT ne garde que ceux des deux semaines : {1, 2}, soit 2 lignes.

SELECT plat_id FROM tickets WHERE semaine = 'cette_semaine'
EXCEPT
SELECT plat_id FROM tickets WHERE semaine = 'semaine_derniere';

EXCEPT garde les plats commandés cette semaine, mais pas la semaine dernière : {1, 2, 3, 5} moins {1, 2, 4} = {3, 5}, soit 2 lignes également, mais un résultat différent.

À retenir :

  • INTERSECT répond à « quels plats reviennent d'une semaine à l'autre ? », EXCEPT répond à « quels plats sont nouveaux cette semaine ? ».
  • Ces deux questions, bien que portant sur les mêmes deux ensembles, produisent des réponses différentes — la nuance entre les deux opérateurs.

À vous de jouer : le plat_id 4 (Soupe du Jour) apparaît-il dans le résultat de l'EXCEPT ci-dessus ? Justifiez à partir des deux ensembles de départ.

🔒

Continuez ce module

Débloquez les leçons restantes ainsi que l'attestation finale.

7 500 XOF / 11,43 € / 12,46 $

Débloquez les 87 leçons restantes de ce module

Pour vous communiquer où envoyer le paiement.

Moyen de paiement souhaité

Nous vous contactons pour le paiement — activé dès réception.