Il existe différentes jointures dans Oracle comme la jointure interne, la jointure externe gauche, la jointure externe droite, la jointure externe complète, la jointure croisée. Ce tutoriel SQL fournit la syntaxe de jointure oracle sur chacun d'eux avec des exemples
Syntaxe de jointure interne et exemple
Deux exemples de tableaux et syntaxe
SÉLECTIONNEZ EMP.EMPNO,EMP.ENAME, DEPT.DEPTNO,DEPT.DNAME
FROM EMP , DEPT
où EMP. DEPTNO=DEPT. DEPTNO ;
ou
Syntaxe ANSI
SÉLECTIONNEZ EMP.EMPNO,EMP.ENAME, DEPT.DEPTNO,DEPT.DNAME
FROM EMP INNER JOIN DEPT
sur EMP. DEPTNO=DEPT. DEPTNO ;
ou
SÉLECTIONNEZ EMP.EMPNO,EMP.ENAME, DEPT.DEPTNO,DEPT.DNAME
FROM EMP INNER JOIN DEPT
à l'aide de (DEPTNO) ;
Exemple de jointure interne de plusieurs tables
SELECT EMP.EMPNO,EMP.ENAME, DEPT.DEPTNO,DEPT.DNAME,REGION.REGION_NAME
FROM EMP , DEPT,REGION
où EMP. DEPTNO=DEPT. DEPTNO
et DEPT.REGION_ID=REGION.REGION_NAME ;
ou
SELECT EMP.EMPNO,EMP.ENAME, DEPT.DEPTNO,DEPT.DNAME,REGION.REGION_NAME
FROM EMP
jointure interne DEPT sur EMP. DEPTNO=DEPT. DEPTNO
jointure interne REGION sur DEPT.REGION_ID=REGION.REGION_NAME ;
ou
SELECT EMP.EMPNO,EMP.ENAME, DEPT.DEPTNO,DEPT.DNAME,REGION.REGION_NAME
FROM EMP inner join DEPT using (DEPTNO)
inner join REGION using (REGION_ID) ;
Syntaxe et exemple de jointure croisée
SELECT EMPNO,ENAME, DEPT.DEPTNO,DNAME FROM EMP , DEPT;
ou
SELECT EMPNO,ENAME, DEPT.DEPTNO,DNAME FROM EMP cross join DEPT;
Syntaxe et exemple de jointure externe gauche
sélectionnez empno,ename,emp.deptno,dname
à partir de emp
LEFT OUTER JOIN dept
sur emp.deptno=dept.deptno ;
- syntaxe des signes
sélectionnez empno,ename,emp.deptno,dname
dans emp ,dept où emp.deptno=dept.deptno(+);
- est du côté où NULL est attendu et il est du côté droit
Syntaxe et exemples de la jointure externe droite
sélectionnez empno,ename,dept.deptno,dname
dans emp
right OUTER JOIN dept
sur emp.deptno=dept.deptno ;
- syntaxe des signes
sélectionnez empno,ename,dept.deptno,dname
dans emp ,dept où emp.deptno(+)=dept.deptno ;
- est du côté où NULL est attendu et il est du côté gauche
Syntaxe de jointure externe complète et exemples
select empno,ename,dept.deptno,dname
from emp
full OUTER JOIN dept
on emp.deptno=dept.deptno;
Articles connexes
Oracle Joins
Jointure par boucles imbriquées dans Oracle
Diverses méthodes de jointures dans Oracle
Jointure par hachage dans Oracle