Derniers tutoriels de développement web
 

SQL raccordement


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