Setup Menus in Admin Panel

7. DIFFERENCE

BDD Conception&Normalisation - Part5

La différence porte sur deux relations de même schéma, ou ayant des attributs en commun.

La relation résultat possède les attributs de la relation d’origine et les n-uplets de la première relation qui n’appartiennent pas à la deuxième.

NOTA : DIFFERENCE (R1, R2) ne donne pas le même résultat que DIFFERENCE (R2, R1).

 

L’union s’exprime de plusieurs manières en SQL :

  • Avec le mot clé IN

SELECT table1.champ1, table1.champ2, …

FROM table1

WHERE table1.champ1 NOT IN (SELECT table2.champ1 FROM table2)

  • Avec le mot clé EXISTS

SELECT table1.champ1, table1.champ2, … FROM table1 WHERE NOT EXISTS

(

SELECT * FROM table2 WHERE table1.champ1=table2.champ1

)

  • Avec une jointure externe

SELECT table1.champ1, table1.champ2, …

FROM table1

LEFT JOIN table2 ON table1.champ1 = table2.champ1

WHERE table2.champ1 IS NULL

 

Exemple de différence

On veut avoir une liste contenant les étudiants anglophones qui ne parlent pas français

EtudiantsFrancophones Matricule Nom EtudiantsAnglophones Matricule Nom
1 Daouda 1 Daouda
2 Fouda 4 Lobe
3 Kamdem

 

Résultat de la différence : EtudiantsAnglophones EtudiantsFrancophones

DifferenceEtudiantsAetF Matricule Nom
4 Lobe

 

Traduction en SQL

SELECT * FROM EtudiantsAnglophones

WHERE EtudiantsAnglophones.Matricule NOT IN

(

SELECT EtudiantsFrancophones.Matricule FROM EtudiantsFrancophones

)

 

SEE ALL Add a note
YOU
Add your Comment

Related Courses Widget

Course

GetReady
BP : 13832 Nkolfoulou Yaoundé
Tel: 00237 655 214 000
Email: contact@lets-getready.org

top
© GetReady. Tous droits réservés.
X