sql的幾種連線

2021-08-20 06:53:41 字數 929 閱讀 1598

最近找工作複習mysql,涉及到sql的幾種join

a表id

name

1zhang2li

3wang

4zhao

b表id

name

2zhao

4qian5wu

7zhang

1.inner join:

是一種內連線,也是一種普通的連線,只是將a和b中所指定屬性中的相同的元素選擇出來(其中又分為等值連線和不等值連線,如下例就是等值連線)

select * from a inner join b on a.name = b.name

a.id

a.name

b,id

b,name

1zhang

7zhang

4zhao

2zhao

也就相當於是選擇兩者的交集

2.natrual join 自然連線

自然連線不需要選擇屬性,他要求兩個關係中進行比較的分量必須是相同屬性組,並且在結果中把重複的屬性列去掉(而等值連線就不需要去掉重複的額屬性列)

select * from a natrual join b
a.id

name

b.id

1zhang74

zhao

23.left outer join , right outer join, full outer join

三種中結果會出現null,也都需要指定屬性

4.cross join就是普通的笛卡爾積

3和4可以參考difference between inner join & full join

mysql: ** inner join、left join、right join、full outer join、union、union all的區別

SQL的幾種連線

1.內連線 結果 從左表中取出每一條記錄,去右表中與所有的記錄進行匹配 匹配必須是某個條件是左表中與右表中相同,才會保留結果,否則不保留 1.等值連線 在連線條件中使用等於號 運算子比較被連線列的列值,其查詢結果中列出被連線表中的所有列,包括其中的重複列。2.不等值連線 在連線條件使用除等於運算子以...

SQL中的幾種連線

1 內連線inner join select a.name,b.name from table1 a inner join table2 b on a.id b.id 返回table1和table2表的交集部分 2 左連線left join select from table1 a left joi...

SQL表連線的幾種方式

一 關係代數 合併資料集合的理論基礎是關係代數,它是由e.f.codd於1970年提出的。在關係代數的形式化語言中,用表 或者資料集合表示關係或者實體,用行表示元組,用列表示屬性。關係代數包含以下8個關係運算子 1.選取 返回滿足指定條件的行。2.投影 從資料集合中返回指定的列。3.笛卡爾積 是關係...