主頁 > 知識庫 > SQL語句的并集UNION 交集JOIN(內(nèi)連接,外連接)等介紹

SQL語句的并集UNION 交集JOIN(內(nèi)連接,外連接)等介紹

熱門標簽:安陽天音防封電銷卡 貴州外呼回撥系統(tǒng)是什么 智能語音車載電話機器人 智能外呼系統(tǒng)需要多少錢 陽光創(chuàng)信ai外呼獲客系統(tǒng)助力 云南全自動外呼系統(tǒng)公司 外呼系統(tǒng)的話術(shù) 衛(wèi)星地圖標注距離 競圣地圖標注服務(wù)
1. a. 并集UNION SELECT column1, column2 FROM table1 UNION SELECT column1, column2 FROM table2 b. 交集JOIN SELECT * FROM table1 AS a JOIN table2 b ON a.name=b.name c. 差集NOT IN SELECT * FROM table1 WHERE name NOT IN(SELECT name FROM table2) d. 笛卡爾積 SELECT * FROM table1 CROSS JOIN table2 與 SELECT * FROM table1,table2相同 2. SQL中的UNION 與UNION ALL的區(qū)別是,前者會去除重復(fù)的條目,后者會仍舊保留。 a. UNION SQL Statement1 UNION SQL Statement2 b. UNION ALL SQL Statement1 UNION ALL SQL Statement2 3. SQL中的各種JOIN SQL中的連接可以分為內(nèi)連接,外連接,以及交叉連接(即是笛卡爾積) a. 交叉連接CROSS JOIN 如果不帶WHERE條件子句,它將會返回被連接的兩個表的笛卡爾積,返回結(jié)果的行數(shù)等于兩個表行數(shù)的乘積; 舉例 SELECT * FROM table1 CROSS JOIN table2 等同于 SELECT * FROM table1,table2 一般不建議使用該方法,因為如果有WHERE子句的話,往往會先生成兩個表行數(shù)乘積的行的數(shù)據(jù)表然后才根據(jù)WHERE條件從中選擇。 因此,如果兩個需要求交際的表太大,將會非常非常慢,不建議使用。 b. 內(nèi)連接INNER JOIN 如果僅僅使用 SELECT * FROM table1 INNER JOIN table2 沒有指定連接條件的話,和交叉連接的結(jié)果一樣。 但是通常情況下,使用INNER JOIN需要指定連接條件。 -- 等值連接(=號應(yīng)用于連接條件, 不會去除重復(fù)的列) SELECT * FROM table1 AS a INNER JOIN table2 AS b on a.column=b.column -- 不等連接(>,>=,<,<=,!>,!<,<>) 例如 SELECT * FROM table1 AS a INNER JOIN table2 AS b on a.column<>b.column -- 自然連接(會去除重復(fù)的列) c. 外連接OUTER JOIN 首先內(nèi)連接和外連接的不同之處: 內(nèi)連接如果沒有指定連接條件的話,和笛卡爾積的交叉連接結(jié)果一樣,但是不同于笛卡爾積的地方是,沒有笛卡爾積那么復(fù)雜要先生成行數(shù)乘積的數(shù)據(jù)表,內(nèi)連接的效率要高于笛卡爾積的交叉連接。 指定條件的內(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)全外連接顯示符合條件的數(shù)據(jù)行,同時顯示左右不符合條件的數(shù)據(jù)行,相應(yīng)的左右兩邊顯示NULL
您可能感興趣的文章:
  • sql server 交集,差集的用法詳解
  • MySQL實現(xiàn)差集(Minus)和交集(Intersect)測試報告
  • MySQL 查詢結(jié)果取交集的實現(xiàn)方法
  • SQLServer中求兩個字符串的交集
  • mysql-joins具體用法說明

標簽:鄂爾多斯 營口 欽州 湘潭 周口 寧夏 河源 預(yù)約服務(wù)

巨人網(wǎng)絡(luò)通訊聲明:本文標題《SQL語句的并集UNION 交集JOIN(內(nèi)連接,外連接)等介紹》,本文關(guān)鍵詞  SQL,語句,的,并,集,UNION,交集,;如發(fā)現(xiàn)本文內(nèi)容存在版權(quán)問題,煩請?zhí)峁┫嚓P(guān)信息告之我們,我們將及時溝通與處理。本站內(nèi)容系統(tǒng)采集于網(wǎng)絡(luò),涉及言論、版權(quán)與本站無關(guān)。
  • 相關(guān)文章
  • 下面列出與本文章《SQL語句的并集UNION 交集JOIN(內(nèi)連接,外連接)等介紹》相關(guān)的同類信息!
  • 本頁收集關(guān)于SQL語句的并集UNION 交集JOIN(內(nèi)連接,外連接)等介紹的相關(guān)信息資訊供網(wǎng)民參考!
  • 推薦文章