欧美bbbwbbbw肥妇,免费乱码人妻系列日韩,一级黄片

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

 更新時(shí)間:2014年07月06日 00:35:56   投稿:mdxy-dxy  
這篇文章主要介紹了SQL語(yǔ)句的并集UNION,交集JOIN(內(nèi)連接,外連接),交叉連接(CROSS JOIN笛卡爾積),差集(NOT IN) ,需要的朋友可以參考下
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ū)別是,前者會(huì)去除重復(fù)的條目,后者會(huì)仍舊保留。 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條件子句,它將會(huì)返回被連接的兩個(gè)表的笛卡爾積,返回結(jié)果的行數(shù)等于兩個(gè)表行數(shù)的乘積; 舉例 SELECT * FROM table1 CROSS JOIN table2 等同于 SELECT * FROM table1,table2 一般不建議使用該方法,因?yàn)槿绻蠾HERE子句的話,往往會(huì)先生成兩個(gè)表行數(shù)乘積的行的數(shù)據(jù)表然后才根據(jù)WHERE條件從中選擇。 因此,如果兩個(gè)需要求交際的表太大,將會(huì)非常非常慢,不建議使用。 b. 內(nèi)連接INNER JOIN 如果僅僅使用 SELECT * FROM table1 INNER JOIN table2 沒(méi)有指定連接條件的話,和交叉連接的結(jié)果一樣。 但是通常情況下,使用INNER JOIN需要指定連接條件。 -- 等值連接(=號(hào)應(yīng)用于連接條件, 不會(huì)去除重復(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 -- 自然連接(會(huì)去除重復(fù)的列) c. 外連接OUTER JOIN 首先內(nèi)連接和外連接的不同之處: 內(nèi)連接如果沒(méi)有指定連接條件的話,和笛卡爾積的交叉連接結(jié)果一樣,但是不同于笛卡爾積的地方是,沒(méi)有笛卡爾積那么復(fù)雜要先生成行數(shù)乘積的數(shù)據(jù)表,內(nèi)連接的效率要高于笛卡爾積的交叉連接。 指定條件的內(nèi)連接,僅僅返回符合連接條件的條目。外連接則不同,返回的結(jié)果不僅包含符合連接條件的行,而且包括左表(左外連接時(shí)), 右表(右連接時(shí))或者兩邊連接(全外連接時(shí))的所有數(shù)據(jù)行。 1)左外連接LEFT [OUTER] JOIN 顯示符合條件的數(shù)據(jù)行,同時(shí)顯示左邊數(shù)據(jù)表不符合條件的數(shù)據(jù)行,右邊沒(méi)有對(duì)應(yīng)的條目顯示NULL 例如 SELECT * FROM table1 AS a LEFT [OUTER] JOIN ON a.column=b.column 2)右外連接RIGHT [OUTER] JOIN 顯示符合條件的數(shù)據(jù)行,同時(shí)顯示右邊數(shù)據(jù)表不符合條件的數(shù)據(jù)行,左邊沒(méi)有對(duì)應(yīng)的條目顯示NULL 例如 SELECT * FROM table1 AS a RIGHT [OUTER] JOIN ON a.column=b.column 3)全外連接顯示符合條件的數(shù)據(jù)行,同時(shí)顯示左右不符合條件的數(shù)據(jù)行,相應(yīng)的左右兩邊顯示NULL

相關(guān)文章

  • sql?server多行數(shù)據(jù)合并一行顯示簡(jiǎn)單實(shí)現(xiàn)代碼

    sql?server多行數(shù)據(jù)合并一行顯示簡(jiǎn)單實(shí)現(xiàn)代碼

    有時(shí)候我們需要將多行數(shù)據(jù)按照某一列進(jìn)行合并,以便更方便地進(jìn)行數(shù)據(jù)分析和處理,這篇文章主要給大家介紹了關(guān)于sql?server多行數(shù)據(jù)合并一行顯示簡(jiǎn)單實(shí)現(xiàn)的相關(guān)資料,需要的朋友可以參考下
    2023-12-12
  • SQL Server日期加減函數(shù)DATEDIFF與DATEADD用法分析

    SQL Server日期加減函數(shù)DATEDIFF與DATEADD用法分析

    這篇文章主要介紹了SQL Server日期加減函數(shù)DATEDIFF與DATEADD用法,結(jié)合分析SQL Server使用DATEDIFF與DATEADD函數(shù)獲取常見(jiàn)的周、月、天等日期相關(guān)運(yùn)算技巧,需要的朋友可以參考下
    2017-03-03
  • 最新評(píng)論