<output id="qn6qe"></output>

    1. <output id="qn6qe"><tt id="qn6qe"></tt></output>
    2. <strike id="qn6qe"></strike>

      亚洲 日本 欧洲 欧美 视频,日韩中文字幕有码av,一本一道av中文字幕无码,国产线播放免费人成视频播放,人妻少妇偷人无码视频,日夜啪啪一区二区三区,国产尤物精品自在拍视频首页,久热这里只有精品12

      SQL Server 之 UNION(原創(chuàng))

      UNION 將兩個(gè)或更多查詢的結(jié)果合并為單個(gè)結(jié)果集,該結(jié)果集包含聯(lián)合查詢中的所有查詢的全部行。UNION 運(yùn)算不同于使用聯(lián)接合并兩個(gè)表中的列的運(yùn)算。
      下面列出了使用 UNION 合并兩個(gè)查詢結(jié)果集的基本規(guī)則:
         1、所有查詢中的列數(shù)和列的順序必須相同。
         2、數(shù)據(jù)類型必須兼容(相同或可隱式轉(zhuǎn)換)。

      語法:
      查詢表達(dá)式1 UNION [ALL] 查詢表達(dá)式2
      select fields from tableA UNION select fields from tableB

      查詢表達(dá)式:
      查詢表達(dá)式或查詢規(guī)范,用以返回與另一個(gè)查詢規(guī)范或查詢表達(dá)式所返回的數(shù)據(jù)合并的數(shù)據(jù)。作為 UNION 運(yùn)算一部分的列定義可以不相同,但它們必須通過隱式轉(zhuǎn)換實(shí)現(xiàn)兼容。如果數(shù)據(jù)類型不同,則根據(jù)數(shù)據(jù)類型優(yōu)先順序規(guī)則確定所產(chǎn)生的數(shù)據(jù)類型。如果類型相同,但精度、小數(shù)位數(shù)或長度不同,則根據(jù)用于合并表達(dá)式的相同規(guī)則來確定結(jié)果。
      UNION:
      指定合并多個(gè)結(jié)果集并將其作為單個(gè)結(jié)果集返回。使用UNION會(huì)自動(dòng)排除相同的記錄,刪除重復(fù)行。(類似與單一查詢的DISTINCT。)
      ALL:
      將全部行并入結(jié)果中。其中包括重復(fù)行。如果未指定該參數(shù),則刪除重復(fù)行。

      例表A:UA 例表B:UB

      注意:SQL UNION會(huì)自動(dòng)排除相同的記錄,刪除重復(fù)行。這里的相同記錄指的是要用UNION合并兩個(gè)查詢結(jié)果的所有字段的值都相同。

      select AID,ANAME,ASEX from UA union select BID,BNAME,BSEX from UB
      說明:
      1、UA表中有三個(gè)字段,UB表中有四個(gè)三字,但UNION考慮前后兩個(gè)查詢果(并不是實(shí)際表中的數(shù)據(jù))的列數(shù)要一致,即都是三個(gè)字段,且字段的數(shù)據(jù)類型一致就行了,結(jié)果如左圖所示。

      如果用:select * from UA union select * from UB
      或 select AID,ANAME,ASEX from UA union select BID,BNAME,BSEX,BAddress from UB
      因?yàn)榱袛?shù)不一致,將拋出錯(cuò)誤。

      2、UNION會(huì)自動(dòng)刪除重復(fù)行。結(jié)果中姓名為"馬艷艷"的,雖然性別、姓名都一樣,但因?yàn)镮D不同,則不認(rèn)為是重復(fù)的記錄,也就是說這里的重復(fù)記錄指的是兩個(gè)查詢結(jié)果中的所有字段的值都是一樣的。如:姓名為"鄧事文"的記錄則認(rèn)為重復(fù)記錄,只保留一條。

      UNION會(huì)自動(dòng)刪除重復(fù)行(記錄)的演示:

      select AID from UA union select bid from UB
      select ANAME from UA union select BNAME from UB
      select ASEX from UA union select BSEX from UB

      注意:因?yàn)榍懊娴氖侵鞅恚越Y(jié)果中的字段名都是UA表中的字段名。

      再來看字段數(shù)據(jù)類型要一致的演示:
      select AID,ANAME,ASEX from UA union select BID,BNAME,BAddress from UB
      說明:
      因?yàn)閁A表中的ASEX與UB表中的BAddress都為varchar數(shù)據(jù)類型,所以結(jié)果如左圖所示。
      如果類型相同,但精度、小數(shù)位數(shù)或長度不同,則根據(jù)用于合并表達(dá)式的相同規(guī)則來確定結(jié)果。

      select ANAME,ASEX from UA union select BNAME,BID from UB
      select ANAME,AID from UA union select BNAME,BSEX from UB
      錯(cuò)誤提示:在將 varchar 值 '女' 轉(zhuǎn)換成數(shù)據(jù)類型 int 時(shí)失敗。



      可以對(duì)數(shù)據(jù)類型進(jìn)行轉(zhuǎn)換后再UNION
      select ANAME,cast(AID as varchar) from UA union select BNAME,BSEX from UB

      如果用:select ANAME,AID from UA union select BNAME,BSEX from UB
      不進(jìn)行數(shù)據(jù)類型的轉(zhuǎn)換,將會(huì)出現(xiàn)錯(cuò)誤。
      最后看看UNION ALL:
      select AID,ANAME,ASEX from UA union all select BID,BNAME,BSEX from UB

      說明:
      UNION ALL 也是要將兩個(gè) SQL 語句的結(jié)果合并在一起。 UNION ALL 和 UNION 不同之處在于 UNION ALL 會(huì)將左右兩個(gè)查詢的結(jié)果的所有的資料都列出來,無論資料值有無重復(fù)。

      左圖結(jié)果中,姓名為"鄧事文"的記錄,在兩個(gè)查詢中是完全相同的。對(duì)比上面第一次試驗(yàn)的結(jié)果(9條記錄),現(xiàn)在這次因?yàn)橛昧薝NION ALL 姓名為"鄧事文"的記錄不管它是否重復(fù),都分別從兩個(gè)查詢結(jié)果中取了出來(結(jié)果為10條記錄)。
      轉(zhuǎn)載請(qǐng)注明出處
      posted @ 2008-12-25 16:37  Dsw  閱讀(3213)  評(píng)論(0)    收藏  舉報(bào)
      主站蜘蛛池模板: 欧美精欧美乱码一二三四区| 在线涩涩免费观看国产精品| 老司机精品成人无码AV| 日韩a无v码在线播放| 亚洲精品乱码久久观看网| 易门县| 国产一区一一区高清不卡| 色狠狠色婷婷丁香五月| 国产午夜精品福利视频| 老色鬼永久精品网站| 国产亚洲精品2021自在线| 久久96热在精品国产高清| 含紧一点h边做边走动免费视频| 久久精品免视看成人国产| 国产呻吟久久久久久久92| 在国产线视频A在线视频| 亚洲国产日韩欧美一区二区三区| 日本亚洲中文字幕不卡| 吉川爱美一区二区三区视频| 四虎永久在线精品无码视频| 国产一区二区亚洲一区二区三区| 少妇人妻偷人精品视频| 人妻影音先锋啪啪av资源| 国产高清一区二区不卡| 亚洲码与欧洲码区别入口| 久久久久无码中| 人妻性奴波多野结衣无码| 亚洲国模精品一区二区| 亚洲熟妇自偷自拍另类| 激情综合五月网| 日韩在线视频观看免费网站| 望江县| 亚洲熟妇在线视频观看| 91毛片网| 精品人妻一区二区三区蜜臀| 麻豆一区二区三区精品视频| 成人福利一区二区视频在线| 97一期涩涩97片久久久久久久| 在线中文字幕国产精品| 波多野结衣乳喷高潮视频 | 久久精品国产亚洲夜色av|