定義inner join
內連線是最常見的一種連線,它也被稱為普通連線,只連線匹配的行(僅對滿足連線條件的cross中的列)。它又分為等值連線(連線條件運算子為"=")和不等值連線(連線條件運算子不為"=",例如between...and)。
outer join
full outer join
包含左、右兩個表的全部行,不管另外一邊的表中是否存在與它們匹配的行。
left outer join
包含左邊表的全部行(不管右邊的表中是否存在與它們匹配的行),以及右邊表中全部匹配的行
right outer join
包含右邊表的全部行(不管左邊的表中是否存在與它們匹配的行),以及左邊表中全部匹配的行
cross join
笛卡爾乘積(所有可能的行對),交叉連線用於對兩個源表進行純關係代數的乘運算。它不使用連線條件來限制結果集合,而是將分別來自兩個資料來源中的行以所有可能的方式進行組合。
natural join
自然連線是一種特殊的等值連線,它要求兩個關係中進行比較的分量必須是相同的屬性組,並且在結果中把重複的屬性列去掉;而等值連線不會去掉重複的屬性列。
self join
某個表和其自身連線,連線方式可以是內連線,外連線,交叉連線
新建表a
新建表b
right outer join:右外關聯
natural join:自然連線是一種特殊的等值連線
SQL各種連線
1.內連線 inner join 內連線使用比較運算子根據每個表共有的列的值匹配兩個表中的行。2.外連線 外連線可以是 左向外連線 右向外連線或完整外部連線。在from子句中指定外連線時,可以由下列幾組關鍵字中的一組指定 left join 或 left outer join。左向外連線的結果集包括...
sql的各種連線查詢
以下均以oracle scott賬號自帶的資料庫為例 方括號裡的東西表示有和沒有效果是一樣的 表內查詢 自連線 查詢所有經理所對應的雇員 sql 86 select manager.ename as manager,worker.ename as worker from emp manager,em...
sql的各種join連線
1 select from tablea inner join tableb 2 on tablea.name tableb.name 3id name id name 4 51 pirate 2 pirate 63 ninja 4 ninja78 9inner join 10產生的結果集中,是a和...