Accueil > Non classé > Les jointures SQL

Les jointures SQL

24/02/2010

Certes ce n’est pas du BizTalk, mais cela ne fait pas de mal….

JOINTURE NATURELLE :
la jointure s’effectue sur les colonnes communes, c’est à dire celles de même nom et type :

SELECT colonnes FROM table1 NATURALJOIN table2 [USING col1, col2 ... ] [WHERE prédicat]

Le mot clef USING permet de restreindre les colonnes communes à prendre en considération.

JOINTURE INTERNE :
la jointure s’effectue entre les tables sur les colonnes précisées dans la condition de jointure :

SELECT colonnes FROM table1 t1 [INNER ] JOIN table2 t2 ON condition [WHERE prédicat]

JOINTURE EXTERNE :
récupère les lignes des tables correspondant au critère de jointure, mais aussi celle pour lesquelles il n’existe pas de correspondances.

SELECT colonnes FROM table1 t1 [RIGHT OUTER | LEFT OUTER | FULL OUTER ] JOIN table2 t2 ON condition [WHERE prédicat] ...

  • RIGHT OUTER : la table à droite de l’expression clef “RIGHT OUTER” renvoie des lignes sans correspondance avec la table à gauche.
  • LEFT OUTER : la table à gauche de l’expression clef “LEFT OUTER” renvoie des lignes sans correspondance avec la table à droite.
  • FULL OUTER : les deux tables renvoient des lignes sans correspondance entre elles.

JOINTURE CROISÉE :
réalise le produit cartésien (la “multiplication”) des deux tables. Il n’y a pas de condition.

SELECT colonnes FROM table1 t1 CROSS JOIN table2 t2 [WHERE prédicat] ...

JOINTURE D’UNION :
concatène les tables sans aucune correspondances de colonnes

SELECT colonnes FROM table1 UNION JOIN table2
Il n’y a pas de critère de jointure.

Les commentaires sont fermés.