oracle自連接


自連接是指在同一張表的連接查詢

?       顯示員工的上級領導的姓名,比如顯示‘FORD’的上級

①查詢出FORD這個人的上級編號:

select mgr from emp where ename='FORD';

②顯示上級的信息:

select * from emp where empno=(select mgr from emp where ename='FORD');

擴展要求

?       顯示各員工的姓名和他的上級領導姓名

思路:把emp表看做兩張表(worker,boss)

select worker.ename,boss.ename from emp worker,emp boss where worker.mgr=boss.empno;

疑惑:這里我們看到KING沒有顯示,因為KING沒有上級,如果我們希望把沒有上級的人也顯示出來,則需要使用外連接。

select worker.ename,boss.ename from emp worker,emp boss where worker.mgr=boss.empno(+);


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM