加入
適用於:磚的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
連接類型。
[內]
返回在兩個表引用中都具有匹配值的行。默認的連接類型。
左[外]
返回左表引用中的所有值和右表引用中的匹配值,或追加
零
如果沒有匹配。它也被稱為a左外連接.右[外]
返回右表引用中的所有值和左表引用中的匹配值,或追加
零
如果沒有匹配。它也被稱為a右外連接.完整的(外)
返回兩個關係中的所有值,並附加
零
沒有匹配的一側的值。它也被稱為a完全外連接.[左]半
返回與右邊匹配的表引用左側的值。它也被稱為a左半聯接.
[左]反
返回左表引用中與右表引用不匹配的值。它也被稱為a左反聯接.
交叉連接
返回兩個關係的笛卡爾積。
自然
指定兩個關係中的行將隱式地對具有匹配名稱的所有列進行相等匹配。
join_criteria
指定一個表引用的行如何與另一個表引用的行組合。
在boolean_expression
返回類型為BOOLEAN的表達式,該表達式指定如何匹配兩個關係中的行。如果結果為真,則認為行匹配。
使用(column_name[,…])
通過比較列列表的相等性來匹配行
column_name
在兩種關係中都必須存在。使用(c1,c2)
是同義詞嗎在rel1.c1=rel2.c1和rel1.c2=rel2.c2
.
具有可選列標識符列表的臨時名稱。
例子
—使用員工和部門表來演示不同類型的連接。>創建臨時視圖員工(id,的名字,deptno)作為值(105,克洛伊的,5),(103,“保羅”,3.),(101,“約翰。”,1),(102,“麗莎”,2),(104,“伊萬”,4),(106,“艾米”,6);>創建臨時視圖部門(deptno,deptname)作為值(3.,“工程”),(2,“銷售”),(1,“市場營銷”);——使用員工表和部門表來演示內部連接。>選擇id,的名字,員工.deptno,deptname從員工內心的加入部門在員工.deptno=部門.deptno;103保羅3.工程101約翰1市場營銷102麗莎2銷售—使用員工表和部門表來演示左連接。>選擇id,的名字,員工.deptno,deptname從員工左加入部門在員工.deptno=部門.deptno;105克洛伊5零103保羅3.工程101約翰1市場營銷102麗莎2銷售104埃文4零106艾米6零—使用員工表和部門表來演示正確連接。>選擇id,的名字,員工.deptno,deptname從員工正確的加入部門在員工.deptno=部門.deptno;103保羅3.工程101約翰1市場營銷102麗莎2銷售—使用員工和部門表來演示完全連接。>選擇id,的名字,員工.deptno,deptname從員工完整的加入部門在員工.deptno=部門.deptno;101約翰1市場營銷106艾米6零103保羅3.工程105克洛伊5零104埃文4零102麗莎2銷售—使用員工和部門表來演示交叉連接。>選擇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銷售—使用員工表和部門表來演示半連接。>選擇*從員工半加入部門在員工.deptno=部門.deptno;103保羅3.101約翰1102麗莎2—使用員工和部門表來演示反加入。>選擇*從員工反加入部門在員工.deptno=部門.deptno;105克洛伊5104埃文4106艾米6—使用員工和部門表來演示橫向內部連接。>選擇id,的名字,deptno,deptname從員工加入橫向(選擇deptname從部門在哪裏員工.deptno=部門.deptno);103保羅3.工程101約翰1市場營銷102麗莎2銷售—使用員工和部門表來演示橫向左連接。>選擇id,的名字,deptno,deptname從員工左加入橫向(選擇deptname從部門在哪裏員工.deptno=部門.deptno);105克洛伊5零103保羅3.工程101約翰1市場營銷102麗莎2銷售104埃文4零106艾米6零