久久国产成人av_抖音国产毛片_a片网站免费观看_A片无码播放手机在线观看,色五月在线观看,亚洲精品m在线观看,女人自慰的免费网址,悠悠在线观看精品视频,一级日本片免费的,亚洲精品久,国产精品成人久久久久久久

分享

SQL的各種連接(cross join、inner join、full join)的用法理解

 小魚兒363 2016-07-12

SQL中的連接可以分為內(nèi)連接,,外連接,以及交叉連接 ,。

1. 交叉連接CROSS JOIN

如果不帶WHERE條件子句,,它將會返回被連接的兩個表的笛卡爾積,,返回結(jié)果的行數(shù)等于兩個表行數(shù)的乘積;

舉例,下列A,、B,、C 執(zhí)行結(jié)果相同,但是效率不一樣:

A:SELECT * FROM table1 CROSS JOIN table2

B:SELECT * FROM table1,table2

C:select * from table1 a inner join table2 b

A:select a.*,b.* from table1 a,table2 b where a.id=b.id

B:select * from table1 a cross join table2 b where a.id=b.id (注:cross join后加條件只能用where,不能用on)

C:select * from table1 a inner join table2 b on a.id=b.id

一般不建議使用方法A和B,,因?yàn)槿绻蠾HERE子句的話,往往會先生成兩個表行數(shù)乘積的行的數(shù)據(jù)表然后才根據(jù)WHERE條件從中選擇,。 

因此,,如果兩個需要求交際的表太大,將會非常非常慢,,不建議使用,。

2. 內(nèi)連接INNER JOIN

兩邊表同時符合條件的組合

如果僅僅使用

SELECT * FROM table1 INNER JOIN table2

內(nèi)連接如果沒有指定連接條件的話,和笛卡爾積的交叉連接結(jié)果一樣,,但是不同于笛卡爾積的地方是,,沒有笛卡爾積那么復(fù)雜要先生成行數(shù)乘積的數(shù)據(jù)表,內(nèi)連接的效率要高于笛卡爾積的交叉連接,。

但是通常情況下,,使用INNER JOIN需要指定連接條件。

 

***************關(guān)于等值連接和自然連接

等值連接(=號應(yīng)用于連接條件, 不會去除重復(fù)的列)

自然連接(會去除重復(fù)的列)

數(shù)據(jù)庫的連接運(yùn)算都是自然連接,,因?yàn)椴辉试S有重復(fù)的行(元組)存在,。

例如:

SELECT * FROM table1 AS a INNER JOIN table2 AS b on a.column=b.column

3. 外連接OUTER JOIN

指定條件的內(nèi)連接,僅僅返回符合連接條件的條目,。

外連接則不同,,返回的結(jié)果不僅包含符合連接條件的行,而且包括左表(左外連接時), 右表(右連接時)或者兩邊連接(全外連接時)的所有數(shù)據(jù)行,。

1)左外連接LEFT [OUTER] JOIN

顯示符合條件的數(shù)據(jù)行,,同時顯示左邊數(shù)據(jù)表不符合條件的數(shù)據(jù)行,右邊沒有對應(yīng)的條目顯示NULL

例如

SELECT * FROM table1 AS a LEFT [OUTER] JOIN ON a.column=b.column

2)右外連接RIGHT [OUTER] JOIN

顯示符合條件的數(shù)據(jù)行,,同時顯示右邊數(shù)據(jù)表不符合條件的數(shù)據(jù)行,,左邊沒有對應(yīng)的條目顯示NULL

例如

SELECT * FROM table1 AS a RIGHT [OUTER] JOIN ON a.column=b.column

3)全外連接full [outer] join

顯示符合條件的數(shù)據(jù)行,同時顯示左右不符合條件的數(shù)據(jù)行,,相應(yīng)的左右兩邊顯示NULL,,即顯示左連接、右連接和內(nèi)連接的并集

    本站是提供個人知識管理的網(wǎng)絡(luò)存儲空間,,所有內(nèi)容均由用戶發(fā)布,,不代表本站觀點(diǎn)。請注意甄別內(nèi)容中的聯(lián)系方式,、誘導(dǎo)購買等信息,,謹(jǐn)防詐騙,。如發(fā)現(xiàn)有害或侵權(quán)內(nèi)容,請點(diǎn)擊一鍵舉報,。
    轉(zhuǎn)藏 分享 獻(xiàn)花(0

    0條評論

    發(fā)表

    請遵守用戶 評論公約

    類似文章 更多