Oracle 外連線查詢

2021-08-19 22:48:37 字數 806 閱讀 7988

注意:外連線,既能查詢出符合條件的記錄,也能根據一方強行將另一方查詢出來。

注意:在oracle中,將(+)出現在=號右邊,稱為左外連線;將(+)出現在=號左邊,稱為右外連線;左外或右外,本質上是一樣的,只是(+)的位置不一樣,且(+)只能出現一次,以上語法是oracle專用語法。

例1:按部門10,20,30,40號,統計各部門員工的人數,要求顯示部門號、部門名、人數。

解一:使用左外連線:

select dept.deptno,dept.dname,count(emp.empno)

from dept,emp

where dept.deptno=emp.deptno(+)

group by dept.deptno,dept.dname;

解二:使用右外連線:

select dept.deptno,dept.dname,count(emp.empno)

from dept,emp

where emp.deptno(+)=dept.deptno

group by dept.deptno,dept.dname;

例2:按部門10,20,30,40號,統計各部門員工的人數,要求顯示部門號、部門名、人數,且按人數降序排列:

select dept.deptno,dept.dname,count(emp.empno)

from dept,emp

where dept.deptno=emp.deptno(+)

group by dept.deptno,dept.dname

order by count(emp.empno) desc;

oracle外連線查詢

講外連線之前,先舉例介紹內連線,也就是一般的相等連線。select from a,b where a.id b.id 對於外連線,oracle中可以使用 來表示,9i可以使用left right full outer join,下面將配合例項一一介紹。1.left outer join 左外關聯 s...

oracle連線查詢 內連線 外連線 全連線

oracle 中的連線可分為,內連線 inner join 外連線 outer join 全連線 full join 不光是oracle 其他很多的資料庫也都有這3 種連線查詢方式 內連線inner join 這是我們經常用的查詢方式,比如select from a,b where a.field1...

Oracle外連線查詢資料不全

plsql中寫好的外連線,條件什麼的都沒問題,但是查詢出來的結果只有左右完全匹配上的記錄,主表有而從表沒有的記錄都不顯示,也就是說,主表記錄顯示不全!這個,把從表的篩選條件,放到on子句中而不是where子句中。select k.spbh,sum c.jssl as 銷售,sum k.kcsl as...