Oracle
 sql >> Database >  >> RDS >> Oracle

esempi di sintassi di Oracle Join

Esistono vari join in Oracle come inner join, left outer join, right external join, full external join, cross join. Questo tutorial SQL fornisce la sintassi di Oracle join su ciascuno di essi con esempi

Sintassi di join interno ed esempio
Due tabelle esempi e sintassi

SELEZIONA EMP.EMPNO,EMP.ENAME, REPARTO.DEPTNO, REPARTO.DNAME
DA EMP , REPARTO
dove EMP. REPARTO=REPARTO DIPARTIMENTO;

o

sintassi ANSI

SELECT EMP.EMPNO,EMP.ENAME, DEPT.DEPTNO, DEPT.DNAME
DA EMP INNER JOIN DEPT
su EMP. REPARTO=REPARTO DIPARTIMENTO;

o

SELECT EMP.EMPNO,EMP.ENAME, DEPT.DEPTNO, DEPT.DNAME
DA EMP INNER JOIN DEPT
utilizzando (DEPTNO);

Esempio di join interno di più tabelle

SELECT EMP.EMPNO,EMP.ENAME, DEPT.DEPTNO,DEPT.DNAME,REGION.REGION_NAME
DA EMP , DEPT,REGION
dove EMP. REPARTO=REPARTO DIPARTIMENTO

e DEPT.REGION_ID=REGION.REGION_NAME;

o

SELEZIONA EMP.EMPNO,EMP.ENAME, DEPT.DEPTNO,DEPT.DNAME,REGION.REGION_NAME
DA EMP
inner unisciti a DEPT   su EMP. REPARTO=REPARTO DEPTNO
inner join REGION su DEPT.REGION_ID=REGION.REGION_NAME;

o
SELECT EMP.EMPNO,EMP.ENAME, DEPT.DEPTNO,DEPT.DNAME,REGION.REGION_NAME
DA EMP inner join  DEPT  utilizzando (DEPTNO)
inner join REGION utilizzando (REGION_ID);

Sintassi ed esempio Cross Join

SELECT EMPNO,ENAME, DEPT.DEPTNO,DNAME  FROM EMP   , DEPT;
o
SELECT EMPNO,ENAME, DEPT.DEPTNO,DNAME  FROM EMP   cross join DEPT;

Sintassi ed esempio Left Outer Join

select empno,ename,emp.deptno,dname
da emp
LEFT OUTER JOIN dept
on emp.deptno=dept.deptno;

  • sintassi del segno

select empno,ename,emp.deptno,dname
da emp ,dept dove emp.deptno=dept.deptno(+);

  • è sul lato dove è previsto NULL ed è sul lato destro

Sintassi ed esempi di join esterno destro

select empno,ename,dept.deptno,dname
da emp
right OUTER JOIN dept
on emp.deptno=dept.deptno;

  • sintassi del segno

select empno,ename,dept.deptno,dname
da emp ,dept dove emp.deptno(+)=dept.deptno;

  • è sul lato dove è previsto NULL ed è sul lato sinistro

Sintassi ed esempi di Full Outer Join

select empno,ename,dept.deptno,dname
da emp
full OUTER JOIN dept
on emp.deptno=dept.deptno;

Articoli correlati

Join di Oracle
Nested Loop Join in Oracle
Metodo di vari join in Oracle
Hash join in Oracle