資源描述:
《union操作符用于合并兩個或多個select語句的結(jié)果集》由會員上傳分享,免費在線閱讀,更多相關(guān)內(nèi)容在工程資料-天天文庫。
1、?1UNIONUNIONALLUNION操作符用于合并兩個或多個SELECT語句的結(jié)果集。請注意,UNION內(nèi)部的SELECT語句必須擁有相同數(shù)量的列。列也必須擁有相似的數(shù)據(jù)類型。同時,每條SELECT語句中的列的順序必須相同。SQLUNION語法SELECTcolumn_name(s)FROMtable_name1UNIONSELECTcolumn_name(s)FROMtable_name2注釋:默認地,UNION操作符選取不同的值。如果允許重復(fù)的值,請使用UNIONALL。SQLUNIONALL語法SELECTcolumn_name(s)FROMtable_name1UNIONA
2、LLSELECTcolumn_name(s)FROMtable_name2另外,UNION結(jié)果集中的列名總是等于UNION中第一個SELECT語句中的列名。下面的例子中使用的原始表:Employees_China:E_IDE_Name01Zhang,Hua02Wang,Wei03Carter,Thomas04Yang,MingEmployees_USA:E_IDE_Name01Adams,John02Bush,George03Carter,Thomas04Gates,Bill使用UNION命令實例列出所有在中國和美國的不同的雇員名:SELECTE_NameFROMEmployees_C
3、hinaUNIONSELECTE_NameFROMEmployees_USA結(jié)果E_NameZhang,HuaWang,WeiCarter,ThomasYang,MingAdams,JohnBush,GeorgeGates,Bill注釋:這個命令無法列出在中國和美國的所有雇員。在上面的例子中,我們有兩個名字相同的雇員,他們當中只有一個人被列出來了。UNION命令只會選取不同的值。UNIONALLUNIONALL命令和UNION命令幾乎是等效的,不過UNIONALL命令會列出所有的值。SQLStatement1UNIONALLSQLStatement2使用UNIONALL命令實例:列出在
4、中國和美國的所有的雇員:SELECTE_NameFROMEmployees_ChinaUNIONALLSELECTE_NameFROMEmployees_USA結(jié)果E_NameZhang,HuaWang,WeiCarter,ThomasYang,MingAdams,JohnBush,GeorgeCarter,ThomasGates,Bill?1leftjoin、rightjoin、innerjoin、fulljoin、unionall、uniontab1:IDnameagefatherID1張三2012李四2533王五4044趙六352tab2:IDfatherNamefatherAg
5、e1張三父452趙六父603李四父40左聯(lián)接以左表為基準,select*fromtab1t1leftjointab2ontab1.fatherID=tab2.id以tab1為基準執(zhí)行結(jié)果是:————————————————----------------------------------tab1.IDnameagefatherIDtab2.idfatherNamefatherAge1張三2011張三父452李四2533李四父403王五404nullnullnull4趙六3522趙六父60————————————————---------------------------------
6、-;右聯(lián)接以右表為基準,等于左聯(lián)接的反向查詢:selecttab1.*fromtab1rightjointab2ontab1.fatherID=tab2.id以tab2為基準執(zhí)行結(jié)果是:————————————————----------------------------------tab1.IDnameagefatherIDtab2.idfatherNamefatherAge1張三2011張三父452李四2533李四父404趙六3522趙六父60————————————————----------------------------------;內(nèi)聯(lián)接查詢兩張表條件都符合的:sel
7、ecttab1.*fromtab1innerjointab2ontab1.fatherID=tab2.id意為tab1.fatherID與tab2.id
相等的條件下才會顯示:————————————————----------------------------------tab1.IDnameagefatherIDtab2.idfatherNamefatherAge1張三2011張三父452李四2533李四父404趙六3522趙六父60——