sql >> Databasteknik >  >> RDS >> Oracle

exempel på oracle join syntax

Det finns olika kopplingar i Oracle som inre koppling, vänster yttre koppling, höger yttre koppling, full yttre koppling, korskoppling. Denna SQL-handledning tillhandahåller oracle join-syntax för var och en av dem med exempel

Inner Join-syntax och exempel
Två tabellexempel och syntax

VÄLJ EMP.EMPNO,EMP.ENAME, DEPT.DEPTNO,DEPT.DNAME
FRÅN EMP , DEPT
där EMP. DEPTNO=DEPT. DEPTNO;

eller

ANSI-syntax

VÄLJ EMP.EMPNO,EMP.ENAME, DEPT.DEPTNO,DEPT.DNAME
FRÅN EMP INNER JOIN DEPT
på  EMP. DEPTNO=DEPT. DEPTNO;

eller

VÄLJ EMP.EMPNO,EMP.ENAME, DEPT.DEPTNO,DEPT.DNAME
FRÅN EMP INNER JOIN DEPT
med (DEPTNO);

Exempel på inre koppling till flera tabeller

VÄLJ EMP.EMPNO,EMP.ENAME, DEPT.DEPTNO,DEPT.DNAME,REGION.REGION_NAME
FRÅN EMP , DEPT,REGION
där EMP. DEPTNO=DEPT. DEPTNO

och DEPT.REGION_ID=REGION.REGION_NAME;

eller

VÄLJ EMP.EMPNO,EMP.ENAME, DEPT.DEPTNO,DEPT.DNAME,REGION.REGION_NAME
FRÅN EMP
inner join  DEPT   på  EMP. DEPTNO=DEPT. DEPTNO
inner join REGION på DEPT.REGION_ID=REGION.REGION_NAME;

eller
VÄLJ EMP.EMPNO,EMP.ENAME, DEPT.DEPTNO,DEPT.DNAME,REGION.REGION_NAME
FRÅN EMP inre join  DEPT  med (DEPTNO)
inner join REGION med (REGION_ID);

Cross Join-syntax och exempel

VÄLJ EMPNO,ENAME, DEPT.DEPTNO,DNAME  FROM EMP   , DEPT;
eller
SELECT EMPNO,ENAME, DEPT.DEPTNO,DNAME  FRÅN EMP   cross join DEPT;

Left Outer Join-syntax och exempel

välj empno,ename,emp.deptno,dname
från emp
LEFT OUTER JOIN avd
på emp.deptno=dept.deptno;

  • teckensyntax

välj empno,ename,emp.deptno,dname
från emp ,dept där emp.deptno=dept.deptno(+);

  • är på den sida där NULL förväntas och den är på höger sida

Right Outer Join-syntax och exempel

välj empno,ename,dept.deptno,dname
från emp
höger OUTTER JOIN avd
på emp.deptno=dept.deptno;

  • teckensyntax

välj empno,ename,dept.deptno,dname
från emp ,dept där emp.deptno(+)=dept.deptno;

  • är på den sida där NULL förväntas och den är på vänster sida

Fullständig Outer Join-syntax och exempel

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

Relaterade artiklar

Oracle Joins
Nested Loop Join i Oracle
Various Joins Method i Oracle
Hash Join i Oracle


  1. Sätt att enkelt bygga om masterdatabasen i SQL Server

  2. Hur man ställer in intervallutdataformatet i PostgreSQL

  3. Varför tar Microsoft SQL Server 2012-frågan några minuter över JDBC 4.0 men sekund(er) i Management Studio?

  4. Eliminera och minska överlappande datumintervall