LEFT OUTER JOIN 使用實況

2021-04-20 08:50:08 字數 1092 閱讀 9106

定義就不用說了吧!

測試資料 test_table

create table test_table

(u_id int,u_name varchar(20))

insert test_table select 1,'a1'

union all select 2,'b2'

union all select 3,'c3';

測試資料 test_table_link

create table test_table_link

(u_id int,u_other varchar(50))

insert test_table_link select 1,'each month'

union all select 1,'each day'

union all select 1,'each year'

union all select 55,'each day'

union all select 55,'each year'

union all select 3,'each day'

union all select 3,'each year'

union all select 88,'each day'

union all select 88,'each month';

結果

select a.u_id,a.u_name,b.u_other

from test_table a left outer join test_table_link b

on a.u_id=b.u_id;

測試環境為sql server 2005

原本以為只是顯示test_table中的每3條記錄,實際上不是這樣的(為什麼多了記錄了呢?),只要第乙個表(test_table)中有,而第二個表與之相關聯得上的都會顯示的,但是一定要在第乙個表(test_table)中存在,如第二個表(test_table_link)中的uid為55,88的不會出現,若第二個表沒有找到與第乙個表相匹配的那當然為null了!right outer join就與之相反了.

LEFT OUTER JOIN 使用實況

left outer join 使用實況 定義就不用說了吧!測試資料 test table create table test table u id int,u name varchar 20 insert test table select1,a1 union allselect2,b2 unio...

LEFT OUTER JOIN 使用例項

定義就不用說了吧!測試資料 test table create table test table u id int,u name varchar 20 insert test table select1,a1 union allselect2,b2 union allselect3,c3 測試資料 ...

在中合理的使用LEFTOUTERJOIN進行開發!

比如我們想對某人的消費專案進行彙總,對應以下兩個表 theme與themedetail theme的記錄為 themeid int themename varchar 10 1 就餐 2 出差 3 乘車 4 其它 themedetail的記錄為 detailid int themeid int pr...