SQL LEFT JOIN mots-clés
SQL LEFT JOIN mots-clés
Le mot-clé LEFT JOIN renvoie toutes les lignes de la table de gauche (table_name1), même s'il n'ya pas de correspondance dans la table de droite (table_name2).
SQL LEFT JOIN Syntaxe
SELECT column_name(s)
FROM table_name1
LEFT JOIN table_name2
ON table_name1.column_name=table_name2.column_name
FROM table_name1
LEFT JOIN table_name2
ON table_name1.column_name=table_name2.column_name
PS: Dans certaines bases de données LEFT JOIN est appelé LEFT OUTER JOIN.
SQL LEFT JOIN Exemple
L'affaire «Personnes» de table:
P_ID | LastName | Prénom | Adresse | Ville |
---|---|---|---|---|
1 | Hansen | Ola | Timoteivn 10 | Sandnes |
2 | Svendsen | Tove | Borgvn 23 | Sandnes |
3 | Pettersen | Kari | Storgt 20 | Stavanger |
"Commandes" table:
O_ID | OrderNo | P_ID |
---|---|---|
1 | 77895 | 3 |
2 | 44678 | 3 |
3 | 22456 | 1 |
4 | 24562 | 1 |
5 | 34764 | 15 |
Maintenant, nous voulons la liste de toutes les personnes et de leurs ordonnances - le cas échéant, dans les tableaux ci-dessus.
On utilise l'instruction SELECT suivante:
SELECT Persons.LastName, Persons.FirstName, Orders.OrderNo
FROM Persons
LEFT JOIN Orders
ON Persons.P_Id=Orders.P_Id
ORDER BY Persons.LastName
FROM Persons
LEFT JOIN Orders
ON Persons.P_Id=Orders.P_Id
ORDER BY Persons.LastName
L'ensemble de résultats se présente comme suit:
LastName | Prénom | OrderNo |
---|---|---|
Hansen | Ola | 22456 |
Hansen | Ola | 24562 |
Pettersen | Kari | 77895 |
Pettersen | Kari | 44678 |
Svendsen | Tove |
Le mot-clé LEFT JOIN renvoie toutes les lignes de la table de gauche (personnes), même s'il n'y a pas de correspondance dans la table de droite (Commandes).
Exemple clair et concret pour comprendre la commande LEFT JOIN. Merci pour cet article qui permet de bien comprendre comment fonctionne cette commande SQL.
ReplyDelete