SQL JOIN (Français)

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

  1. (INNER) JOIN: Sélectionnez des enregistrements qui ont des valeurs correspondantes dans les deux tables.
  2. FULL (OUTER) JOIN: sélectionne tous les enregistrements qui correspondent aux enregistrements de la table gauche ou droite.
  3. LEFT (OUTER) JOIN: Sélectionnez les enregistrements dans première table (la plus à gauche) avec les enregistrements de la table de droite correspondants.
  4. 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.

CUSTOMER

Id

Premiers tName

LastName

Ville

Pays

Téléphone

COMMANDE

Id

OrderDate

OrderNumber

CustomerId

TotalAmount

Exemples SQL JOIN

Problème: Lister toutes les commandes avec les informations client

Dans cet exemple, lutilisation des alias de table pour et Client aurait pu être utile.

Résultat: 830 enregistrements.
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

PRODUIT

Id

ProductName

SupplierId

UnitPrice

Package

IsDiscontinued

ORDERITEM

Id

OrderId

ProductId

UnitPrice

Quantité

COMMANDE

Id

OrderDate

OrderNumber

CustomerId

TotalAmount

Problème: Lister toutes les commandes
avec les noms de produits,
quantités et prix
Cette requête effectue deux opérations JOIN avec 3 tables.
Les alias O, I et P sont des tables . La date est un alias de colonne.
Résultat: 2155 enregistrements

Laisser un commentaire

Votre adresse e-mail ne sera pas publiée. Les champs obligatoires sont indiqués avec *