古詩詞大全網 - 成語用法 - left join和right join區別是什麽?

left join和right join區別是什麽?

(1)left join(左連接)是 left outer join的簡寫,返回左表中所有記錄和右表中連接字段相等的記錄,即返回的記錄數和左表的記錄數壹樣。

(2)right join(右連接),返回右表中所有記錄和左表中連接字段相等的記錄,即返回的記錄數和右表的記錄數壹樣。

(3)join(等值連接),只返回兩個表中連接字段相等的記錄。

有兩個表A,B

A表結構及記錄如下: B表結構及記錄如下:

ID num ? IDnum

1 ?1001 ? 2122

2 ?1002 ? 4144

3 ?1003 ? 6166

4 ?1004

則select * from A a left join B b on(a.ID = b.ID)的結果如下:

A.ID A.num B.ID B.num

11001 null null

21002 2 ? 122

31003 null null

41004 4 144

select * from A a right join B b on(a.ID = b.ID)

的結果如下:

A.IDA.num B.IDB.num

21002 ?2 ? 122

41004 ?4 ? 144

nullnull 6 166

select * from A a join B b on(a.ID = b.ID)</span>

的結果如下:

A.IDA.num B.ID B.num

21002 2 122

4 1004 4 144

如果找在A表中但不在B表中的ID時,用left join方法可以寫作:

select * from A a left join B b on(a.ID =