1. 程式人生 > >Oracle連接查詢

Oracle連接查詢

卡爾 自動 -- 交叉連接 join 匹配 acl 笛卡爾積 log

--交叉連接(會產生笛卡爾積)
select * from emp cross join dept;
--自然連接(可自動匹配關聯字段並消除笛卡爾積)
select * from emp natural join dept;
--JOIN...USING,USING子句後跟關聯的字段
select * from emp e join dept using(deptno);
--JOIN...ON,ON子句後面跟關聯的條件
select * from emp e join salgrade s on (e.sal between s.losal and s.hisal);
--左外連接LEFT OUTER JOIN...ON
select * from emp e left outer join dept d on (e.deptno = d.deptno);
--左外連接也可以寫成這樣:
select * from emp e ,dept d where e.deptno = d.deptno(+);
--右外連接RIGHT OUTER JOIN...ON
select * from emp e right outer join dept d on (e.deptno = d.deptno);
--右外連接也可以寫成這樣:
select * from emp e ,dept d where e.deptno(+) = d.deptno;
--全外連接FULL OUTER JOIN
select * from emp e full outer join dept d on (e.deptno = d.deptno);

Oracle連接查詢