Jointures SQL sont utilisés pour combiner les lignes à partir de deux ou plusieurs tables.
SQL JOIN
Une clause SQL JOIN est utilisé pour combiner les lignes à partir de deux ou plusieurs tables, basé sur un champ commun entre eux.
Le type le plus commun de rejoindre est: SQL INNER JOIN (simple , rejoindre). Une INNER SQL JOIN renvoie toutes les lignes de plusieurs tables où la condition de jointure est remplie.
Regardons une sélection de la "Orders" tableau:
Numéro de commande | N ° de client | Date de commande |
---|---|---|
10308 | 2 | 1996-09-18 |
10309 | 37 | 1996-09-19 |
10310 | 77 | 1996-09-20 |
Ensuite, jeter un oeil à une sélection de la "Customers" tableau:
N ° de client | CustomerName | Nom du contact | Pays |
---|---|---|---|
1 | Alfreds Futterkiste | Maria Anders | Germany |
2 | Ana Trujillo Emparedados y helados | Ana Trujillo | Mexico |
3 | Antonio Moreno Taqueria | Antonio Moreno | Mexico |
Notez que le "CustomerID" colonne dans le "Orders" tableau se réfère à la "CustomerID" dans le "Customers" table. La relation entre les deux tableaux ci - dessus est le "CustomerID" colonne.
Ensuite, si nous courons l'instruction SQL suivante (qui contient un INNER JOIN):
Exemple
SELECT Orders.OrderID, Customers.CustomerName, Orders.OrderDate
FROM
Orders
INNER JOIN Customers
ON Orders.CustomerID=Customers.CustomerID;
Essayez - le vous - même » il va produire quelque chose comme ceci:
Numéro de commande | CustomerName | Date de commande |
---|---|---|
10308 | Ana Trujillo Emparedados y helados | 9/18/1996 |
10365 | Antonio Moreno Taqueria | 11/27/1996 |
10383 | Around the Horn | 12/16/1996 |
10355 | Around the Horn | 11/15/1996 |
10278 | Berglunds snabbkop | 8/12/1996 |
Différent SQL JOIN
Avant de continuer avec des exemples, nous allons énumérer les types des différents SQL JOIN, vous pouvez utiliser:
- INNER JOIN : Renvoie toutes les lignes quand il y a au moins un match dans les deux tables
- LEFT JOIN : Renvoyer toutes les lignes de la table de gauche, et les lignes correspondantes de la table de droite
- RIGHT JOIN : Renvoyer toutes les lignes de la table de droite, et les lignes correspondantes de la table de gauche
- FULL JOIN : Renvoyer toutes les lignes quand il y a un match dans l' une des tables