Oracle連線查詢

2021-07-09 03:42:31 字數 707 閱讀 3723

1 內連線

select 

e.*,d.dname

from emp e,dept d

where 

e.deptno=d.deptno;--隱式內連線查詢實際的語句可以為

select e.*,d.dname

from emp e inner join dept d

on d.deptno=e.deptno;

2 外連線:

特點:外連線用+表示,+表示的字段,在當前表中沒有,但是在關聯表中有,但是仍然會顯示在記錄中,沒有的用null值代替,有的就顯示;

select 

e.*,d.dname

from emp e,dept d

where e.deptno(+)=d.deptno

這個左連線表示的是,在部門表中有的部門,但是確沒有員工,按照正常的隱式連線查詢,沒有員工的部門應該不顯示;

但是在左連線中顯示;

select e.*,d.dname

from emp e,dept d

where e.deptno=d.deptno(+);

這個右連線表示,在員工表中,有些員工沒有部門,在正常的隱式連線查詢中,沒有部門的員工應該不顯示;

但是右連線中仍然顯示沒有部門的員工;

+號加在哪邊,對方的不應該顯示的記錄就會顯示

**至微博

**至微博

oracle查詢連線

select from emp select from dept 左連線 1 查詢與左邊表dept 4 相關聯的資料,如deptno 40在右邊沒有對應的資料,則顯示為空 select from dept left join emp on dept.deptno emp.deptno 查詢與左邊表相...

oracle連線查詢

8i create table dali.test1 a int,b int create table dali.test2 a int,b int insert into dali.test1 values 1,456 insert into dali.test1 values 2,427 ins...

Oracle連線查詢

交叉連線 會產生笛卡爾積 select from emp cross join dept 自然連線 可自動匹配關聯欄位並消除笛卡爾積 select from emp natural join dept join.using,using子句後跟關聯的字段 select from emp e join ...