1. 程式人生 > >oracle 4 : 連接查詢

oracle 4 : 連接查詢

右連接 聯合 lec clas 數據類型 聯合查詢 等值連接 AD distinct

連接查詢: join

(1)等值連接: 通常用主外鍵連接

(2)非等值連接

--統計每個人姓名。部門名,薪資,薪資級別
select ename,d.dname,e.sal,s.grade
from emp e,dept d,salgrade s
where e.sal between s.losal and s.hisal
and e.deptno = d.deptno
技術分享圖片

(3)內部連接 關鍵字 inner join on 想當於where

select *
from emp e
inner join dept d
on d.deptno = e.deptno

(4)外部連接 左右連

  左連接:left join 以左邊表為主表

右連接:

  全外連接 :把表中所有數據都顯示出來,有關聯的數據,使用關聯條件拼接,沒有數據的用null 填充 關鍵字: full outer join

(5)自身連接

  

--自身連接  查詢員工的上級領導
select e1.ename,e1.job,e2.ename from emp e1,emp e2
where e1.mgr = e2.empno

(6)交叉連接,產生笛卡爾積

  

--交叉連接
select * from emp cross join dept

(6)自然連接 關鍵字 natural join

  根據同名列進行自動連接

  要求同名列的數據類型必須相同,長度必須相同,主外鍵必須一致

  相當於沒有條件的等值連接

--自然連接
select * from emp 
natural join dept

(7)聯合查詢: 多個投影結果合並在一起 關鍵字 union all

  要求進行查詢的結果的列數必須相同:

  對應的列的數據類型必須相同,長度口蹄疫不同

  union all 全部顯示

  union 自動去除重復數據  

  

--聯合查詢
select empno, ename
from emp
union all
select deptno,dname from dept

去重關鍵字: distinct:

--查詢都有哪些部門有員工,員工在哪些部門裏
select distinct deptno from emp

oracle 4 : 連接查詢