Types de jointures
Nom | Commentaires |
---|---|
JOIN |
Synonyme de INNER JOIN
|
INNER JOIN |
Type par défaut, synonyme de JOIN
Seules les lignes correspondant au critère de jointure dans les deux tables sont renvoyées. |
OUTER JOIN |
Désigne soit LEFT JOIN , RIGHT JOIN et FULL JOIN
|
LEFT JOIN |
Les lignes de la première table (table de gauche) de la clause FROM sont aussi renvoyées.
|
RIGHT JOIN |
Les lignes de la seconde table (table de droite) de la clause FROM sont aussi renvoyées.
|
FULL JOIN |
A la fois LEFT JOIN et RIGHT JOIN .
|
NATURAL JOIN |
A utiliser lorsque les noms des colonnes des tables jointes sont identiques.
select empno, job, e.deptno, dname from emp e join dept d on e.deptno=d.deptno;Equivalent à : select empno, job, deptno, dname from emp e natural join dept d;Noter que si on n'utilise pas NATURAL JOIN , il faut préciser e.deptno ou d.deptno dans la clause SELECT
|
Jointures sur 3 tables et plus
Voir https://codingstatus.com/sql-join-3-tables/-- jointure sur 3 tables SELECT e.empno, e.ename, e.deptno, d.dname, d.loc, e.sal, s.grade, s.losal, s.hisal FROM emp e JOIN dept d ON e.deptno= d.deptno JOIN salgrade s ON e.sal between s.losal and s.hisal; -- 3 tables, autre syntaxe SELECT e.ename, e.sal, e.deptno, d.dname, s.grade, s.losal, s.hisal FROM emp e, dept d, salgrade s WHERE e.sal BETWEEN s.losal AND s.hisal AND e.deptno = d.deptno;