Comment obtenir des données à partir de plusieurs tables?
Un SQL JOIN combine les enregistrements de deux tables.
Un JOIN localise les valeurs de colonnes associées dans les deux tables.
Une requête peut contenir zéro, une ou plusieurs opérations JOIN.
INNER JOIN est identique à JOIN; le mot clé INNER est facultatif.
Quatre types différents de JOINs
- (INNER) JOIN: Sélectionnez des enregistrements qui ont des valeurs correspondantes dans les deux tables.
- FULL (OUTER) JOIN: sélectionne tous les enregistrements qui correspondent aux enregistrements de la table gauche ou droite.
- LEFT (OUTER) JOIN: Sélectionnez les enregistrements dans première table (la plus à gauche) avec les enregistrements de la table de droite correspondants.
- JOINTURE À DROITE (EXTERNE): sélectionnez les enregistrements de la deuxième table (la plus à droite) avec les enregistrements de la table de gauche correspondants.
Remarque: Tous les mots-clés INNER et OUTER sont facultatifs.
Les détails sur les différentes JOIN sont disponibles dans les pages suivantes du tutoriel.
Le SQL Syntaxe JOIN
La syntaxe générale est
SELECT column-names FROM table-name1 JOIN table-name2 ON column-name1 = column-name2 WHERE condition
La syntaxe générale avec INNER est:
SELECT column-names FROM table-name1 INNER JOIN table-name2 ON column-name1 = column-name2 WHERE condition
Remarque: le mot-clé INNER est facultatif: il sagit de lopération JOIN par défaut ainsi que de lopération JOIN la plus couramment utilisée.
Id
Premiers tName
LastName
Ville
Pays
Téléphone
Id
OrderDate
OrderNumber
CustomerId
TotalAmount
Exemples SQL JOIN
Dans cet exemple, lutilisation des alias de table pour et Client aurait pu être utile.
OrderNumber | TotalAmount | FirstName | LastName | Ville | Pays |
---|---|---|---|---|---|
542378 | 440,00 | Paul | Henriot | Reims | France |
542379 | 1863,40 | Karin | Josephs | Münster | Allemagne |
542380 | 1813,00 | Mario | Pontes | Rio de Janeiro | Brésil |
542381 | 670.80 | Mary | Saveley | Lyon | France |
542382 | 3730,00 | Pascale | Cartrain | Charleroi | Belgique |
542383 | 1444.80 | Mario | Pontes | Rio de Janeiro | Brésil |
542384 | 625,20 | Yang | Wang | Berne | Suisse |
Id
ProductName
SupplierId
UnitPrice
Package
IsDiscontinued
Id
OrderId
ProductId
UnitPrice
Quantité
Id
OrderDate
OrderNumber
CustomerId
TotalAmount
avec les noms de produits,
quantités et prix
Les alias O, I et P sont des tables . La date est un alias de colonne.