成都公司:成都市成華區(qū)建設(shè)南路160號1層9號
重慶公司:重慶市江北區(qū)紅旗河溝華創(chuàng)商務(wù)大廈18樓
當(dāng)前位置:工程項目OA系統(tǒng) > 泛普各地 > 吉林OA系統(tǒng) > 長春OA系統(tǒng) > 長春OA行業(yè)資訊
Oracle數(shù)據(jù)庫中表的四種連接方式講解
1. 相等連接
通過兩個表具有相同意義的列,可以建立相等連接條件。
只有連接列上在兩個表中都出現(xiàn)且值相等的行才會出現(xiàn)在查詢結(jié)果中。
例 查詢員工信息以及對應(yīng)的員工所在的部門信息;

|
SELECT * FROM EMP,DEPT; SELECT * FROM EMP,DEPT WHERE EMP.DEPTNO = DEPT.DEPTNO; |
REM 顯示工資超過2000的員工信息以及對應(yīng)的員工的部門名稱。
2. 外連接
對于外連接,Oracle中可以使用“(+)”來表示,9i可以使用LEFT/RIGHT/FULL OUTER JOIN,下面將配合實例一一介紹。除了顯示匹配相等連接條件的信息之外,還顯示無法匹配相等連接條件的某個表的信息。
外連接采用(+)來識別。
A) 左條件(+) = 右條件;
代表除了顯示匹配相等連接條件的信息之外,還顯示右條件所在的表中無法匹配相等連接條件的信息。
此時也稱為"右外連接".另一種表示方法是:
SELECT ... FROM 表1 RIGHT OUTER JOIN 表2 ON 連接條件
B) 左條件 = 右條件(+);
代表除了顯示匹配相等連接條件的信息之外,還顯示左條件所在的表中無法匹配相等連接條件的信息。
此時也稱為"左外連接".
SELECT ... FROM 表1 LEFT OUTER JOIN 表2 ON 連接條件
例 顯示員工信息以及所對應(yīng)的部門信息
--無法顯示沒有部門的員工信息
--無法顯示沒有員工的部門信息
|
--SELECT * FROM EMP,DEPT WHERE EMP.DEPTNO = DEPT.DEPTNO; |
--直接做相等連接:

SELECT * FROM EMP JOIN DEPT ON EMP.DEPTNO = DEPT.DEPTNO;
REM 顯示員工信息以及所對應(yīng)的部門信息,顯示沒有員工的部門信息
|
--SELECT * FROM EMP,DEPT WHERE EMP.DEPTNO(+) = DEPT.DEPTNO; SELECT * FROM EMP RIGHT OUTER JOIN DEPT ON EMP.DEPTNO = DEPT.DEPTNO; |
REM 顯示員工信息以及所對應(yīng)的部門信息,顯示沒有部門的員工信息
|
--SELECT * FROM EMP,DEPT WHERE EMP.DEPTNO = DEPT.DEPTNO(+); SELECT * FROM EMP LEFT OUTER JOIN DEPT ON EMP.DEPTNO = DEPT.DEPTNO; |
3. 不等連接
兩個表中的相關(guān)的兩列進(jìn)行不等連接,比較符號一般為>,<,...,BETWEEN.. AND..
|
REM SALGRADE --DESC SALGRADE; --SELECT * FROM SALGRADE; |
REM 顯示員工的編號,姓名,工資,以及工資所對應(yīng)的級別。
|
SELECT EMPNO,ENAME,SAL,SALGRADE.* FROM SALGRADE,EMP WHERE EMP.SAL BETWEEN LOSAL AND HISAL; |
REM 顯示雇員的編號,姓名,工資,工資級別,所在部門的名稱;
|
SELECT EMPNO,ENAME,SAL,GRADE,DNAME FROM EMP,DEPT,SALGRADE WHERE EMP.DEPTNO = DEPT.DEPTNO AND EMP.SAL BETWEEN LOSAL AND HISAL; |

4. 自連接
自連接是數(shù)據(jù)庫中經(jīng)常要用的連接方式,使用自連接可以將自身表的一個鏡像當(dāng)作另一個表來對待,從而能夠得到一些特殊的數(shù)據(jù)。下面介紹一下自連接的方法:
將原表復(fù)制一份作為另一個表,兩表做笛卡兒相等連接。
例 顯示雇員的編號,名稱,以及該雇員的經(jīng)理名稱
SELECT WORKER.ENAME,WORKER.MGR,MANAGER.EMPNO,MANAGER.ENAME FROM EMP WORKER,EMP MANAGER
WHERE WORKER.MGR = MANAGER.EMPNO;(樊斌 IT專家網(wǎng))
本站推薦
- 1oracle預(yù)算系統(tǒng):助力企業(yè)精準(zhǔn)規(guī)劃預(yù)算,提升財務(wù)管理效能
- 2深度剖析3大財務(wù)軟件ERP系統(tǒng):SAP、Oracle和金蝶開啟財務(wù)管理新紀(jì)元
- 3全面解析SAP、Oracle與國內(nèi)熱門ERP管理軟件,告訴你哪些更好!
- 4大型erp系統(tǒng)常用開發(fā)語言
- 5經(jīng)典的erp系統(tǒng)有哪些
- 6CRM系統(tǒng)做得比較好的有哪些品牌
- 7基于Oracle Spatial的高速公路養(yǎng)護(hù)管理系統(tǒng)的開發(fā)
- 8Oracle全球副總裁:企業(yè)實施ERP的要點
- 9SAP和ORACLE兩家公司的erp軟件教程產(chǎn)品全解析

