內(nèi)連接用于返回滿足連接條件的記錄;而外連接則是內(nèi)連接的擴(kuò)展,它不僅會(huì)返回滿足連接條件的所有記錄,而且還會(huì)返回滿足不滿足連接條件的記錄!從Oracle9i開始,可以在From 子句中指定連接語(yǔ)法。語(yǔ)法如下: SELECT table.column,table.column2 FROM table1 [
內(nèi)連接用于返回滿足連接條件的記錄;而外連接則是內(nèi)連接的擴(kuò)展,它不僅會(huì)返回滿足連接條件的所有記錄,而且還會(huì)返回滿足不滿足連接條件的記錄!從Oracle9i開始,可以在From 子句中指定連接語(yǔ)法。語(yǔ)法如下:
SELECT table.column,table.column2 FROM table1 [INNER|LEFT|RIGHT|FULL] JOIN table2 ON table.column1=table.column2;
INNER JOIN表示內(nèi)連接,LEFT JOIN 表示左外連接,RIGHT JOIN表示右外連接,F(xiàn)ULL JOIN表示完全外連接;ON 子句用于指定連接條件!
下面我們來(lái)看下這些所謂的連接吧!
1.內(nèi)連接
內(nèi)連接用于返回滿足連接條件的所有記錄。默認(rèn)情況下,在執(zhí)行連接查詢時(shí)如果沒(méi)有指定任何連接操作符,那么這些連接查詢屬于內(nèi)連接。 下面以顯示部門10的部門名及其雇員名為例,說(shuō)明使用內(nèi)連接的方法。示例如下:
SQL> select a.dname ,b.ename from dept a ,emp b where a.deptno=b.deptno and a.deptno=10; DNAME ENAME -------------- ---------- ACCOUNTING CLARK ACCOUNTING KING ACCOUNTING MILLER
工作中用這種連接查詢很多,其實(shí)我一直不知道這就是內(nèi)連接,在我的印象里面,用INNER JOIN連接語(yǔ)法的才是內(nèi)連接,想想都可笑啊!
所以在執(zhí)行連接查詢時(shí),通過(guò)在FROM子句中指定INNER JOIN選項(xiàng),也可以指定內(nèi)連接,這是一種顯示表示內(nèi)連接的方式。示例如下:
SQL> select a.dname,b.ename from dept a inner join emp b on a.deptno=b.deptno and a.deptno=10; DNAME ENAME -------------- ---------- ACCOUNTING CLARK ACCOUNTING KING ACCOUNTING MILLER
還有一種方式的內(nèi)連接,不過(guò)我到現(xiàn)在也不怎么用到,這是從Oracle 9i開始執(zhí)行的,如果主表的主鍵列和從表的外部鍵列名稱相同,那么還可以使用NATURAL JOIN關(guān)鍵字自動(dòng)執(zhí)行內(nèi)連接操作,示例如下:
SQL> select dname ,ename from dept natural join emp; DNAME ENAME -------------- ---------- RESEARCH SMITH SALES ALLEN SALES WARD RESEARCH JONES SALES MARTIN SALES BLAKE ACCOUNTING CLARK RESEARCH SCOTT ACCOUNTING KING SALES TURNER RESEARCH ADAMS SALES JAMES RESEARCH FORD ACCOUNTING MILLER 14 rows selected
2.左外連接
左外連接是通過(guò)指定 LEFT [OUTER] JOIN選項(xiàng)來(lái)實(shí)現(xiàn)的.當(dāng)使用左外連接時(shí),不僅會(huì)返回滿足連接條件的所有記錄,而且還會(huì)返回不滿足連接條件的連接操作符左邊表的其他行。下面以顯示部門10的部門名、雇員名,以及其他部門名為例:
SQL> select a.dname,b.ename from dept a left join emp b on a.deptno=b.deptno and a.deptno=10; DNAME ENAME -------------- ---------- SALES ACCOUNTING CLARK ACCOUNTING KING ACCOUNTING MILLER RESEARCH SALES OPERATIONS
右外連接、全外連接和左外連接很相似,就不多說(shuō)了!
聲明:本網(wǎng)頁(yè)內(nèi)容旨在傳播知識(shí),若有侵權(quán)等問(wèn)題請(qǐng)及時(shí)與本網(wǎng)聯(lián)系,我們將在第一時(shí)間刪除處理。TEL:177 7030 7066 E-MAIL:11247931@qq.com