加入
適用於:磚的SQL磚運行時
結合了兩行表引用基於加入標準。
語法
left_table_reference{(join_type]加入right_table_referencejoin_criteria|自然join_type加入right_table_reference|交叉加入right_table_reference}join_type{(內心的]|左(外]|(左]半|正確的(外]|完整的(外]|(左]反|交叉}join_criteria{在boolean_expression|使用(column_name(,…])}
參數
左邊的表引用的加入。
右邊表引用的加入。
join_type
連接類型。
(內部)
返回匹配的行值在兩個表引用。默認的連接類型。
左(外)
從左表引用和返回所有值匹配的值正確的表引用,或附加
零
如果沒有匹配。它也被稱為左外連接。正確的(外)
從正確的表引用和返回所有值匹配值從左表引用,或附加
零
如果沒有匹配。它也被稱為右外連接。完整的(外)
返回所有值關係,附加
零
值沒有匹配。它也被稱為全外連接。(左)半
從左邊的表引用返回值匹配正確的。它也被稱為左半連接。
(左)反
從左表引用返回值沒有配以正確的表引用。它也被稱為左反連接。
交叉連接
返回兩個的笛卡兒積的關係。
自然
從兩個關係將隱式地指定行匹配在平等與匹配所有列的名字。
join_criteria
指定如何結合行從一個表引用另一個表的行參考。
在boolean_expression
的布爾表達式的返回類型指定行從這兩個關係如何匹配。如果結果是正確的行被認為是一場比賽。
使用(column_name[…])
匹配行通過比較平等的列的列表
column_name
在這兩種關係必須存在。使用(c1,c2)
是一個同義詞在rel1.c1=rel2.c1和rel1.c2=rel2.c2
。
一個臨時的名稱和一個可選的列標識符列表。
例子
——使用employee和department表展示不同類型的連接。>創建臨時視圖員工(id,的名字,deptno)作為值(105年,克洛伊的,5),(103年,“保羅”,3),(101年,“約翰。”,1),(102年,“麗莎”,2),(104年,“伊萬”,4),(106年,“艾米”,6);>創建臨時視圖部門(deptno,deptname)作為值(3,“工程”),(2,“銷售”),(1,“市場營銷”);——使用employee和department表來演示內連接。>選擇id,的名字,員工。deptno,deptname從員工內心的加入部門在員工。deptno=部門。deptno;103年保羅3工程101年約翰1市場營銷102年麗莎2銷售——使用employee和department表來演示加入。>選擇id,的名字,員工。deptno,deptname從員工左加入部門在員工。deptno=部門。deptno;105年克洛伊5零103年保羅3工程101年約翰1市場營銷102年麗莎2銷售104年埃文4零106年艾米6零——使用employee和department表來演示正確的連接。>選擇id,的名字,員工。deptno,deptname從員工正確的加入部門在員工。deptno=部門。deptno;103年保羅3工程101年約翰1市場營銷102年麗莎2銷售——使用employee和department表展示完整的加入。>選擇id,的名字,員工。deptno,deptname從員工完整的加入部門在員工。deptno=部門。deptno;101年約翰1市場營銷106年艾米6零103年保羅3工程105年克洛伊5零104年埃文4零102年麗莎2銷售——使用employee和department表來演示交叉連接。>選擇id,的名字,員工。deptno,deptname從員工交叉加入部門;105年克洛伊5工程105年克洛伊5市場營銷105年克洛伊5銷售103年保羅3工程103年保羅3市場營銷103年保羅3銷售101年約翰1工程101年約翰1市場營銷101年約翰1銷售102年麗莎2工程102年麗莎2市場營銷102年麗莎2銷售104年埃文4工程104年埃文4市場營銷104年埃文4銷售106年艾米4工程106年艾米4市場營銷106年艾米4銷售——使用employee和department表來演示半加入。>選擇*從員工半加入部門在員工。deptno=部門。deptno;103年保羅3101年約翰1102年麗莎2——使用employee和department表展示反加入。>選擇*從員工反加入部門在員工。deptno=部門。deptno;105年克洛伊5104年埃文4106年艾米6——使用employee和department表來演示橫向內連接。>選擇id,的名字,deptno,deptname從員工加入橫向(選擇deptname從部門在哪裏員工。deptno=部門。deptno);103年保羅3工程101年約翰1市場營銷102年麗莎2銷售——使用employee和department表來演示側加入。>選擇id,的名字,deptno,deptname從員工左加入橫向(選擇deptname從部門在哪裏員工。deptno=部門。deptno);105年克洛伊5零103年保羅3工程101年約翰1市場營銷102年麗莎2銷售104年埃文4零106年艾米6零