日韩久久久精品,亚洲精品久久久久久久久久久,亚洲欧美一区二区三区国产精品 ,一区二区福利

Union和Union All的差別

系統 2512 0

如果我們有一個表Student,包含下面字段與數據:

?

?

首先,我們來看一下UNION的樣例:


?

假設換成Union All連接兩個結果集,則結果例如以下:

?

?

能夠看到, Union和Union All的差別之中的一個在于對反復結果的處理。

?

接下來,我們交換一個兩個SELECT語句的順序,看看結果是如何的。

?

?

能夠看到,對于UNION來說,交換兩個SELECT語句的順序后結果仍然是一樣的,這是由于 UNION會自己主動排序 。而UNION ALL在交換了SELECT語句的順序后結果則不同樣,由于UNION ALL不會對結果自己主動進行排序。

?

那么這個自己主動排序的規則是什么呢? 我們交換一下SELECT后面選擇字段的順序(前面使用SELECT *相當于SELECT ID,NAME,SCORE),看看結果怎樣:

?

?

但是看到,此時是依照字段SCORE來對結果進行排序的(前面SELECT *的時候是依照ID進行排序的)。

?

那么有人會問,假設我想自行控制排序, 能不能使用ORDER BY呢?當然能夠。 只是在寫法上有須要注意的地方:

?

?

order by子句必須寫在最后一個結果集里,而且其排序規則將改變操作后的排序結果。對于Union、Union All、Intersect、Minus都有效。

?

其它的集合操作符,如Intersect和Minus的操作和Union基本一致,這里一起總結一下:

?

Union,對兩個結果集進行并集操作,不包含反復行,同一時候進行默認規則的排序;

Union All,對兩個結果集進行并集操作,包含反復行,不進行排序;

Intersect,對兩個結果集進行交集操作,不包含反復行,同一時候進行默認規則的排序;

Minus,對兩個結果集進行差操作,不包含反復行,同一時候進行默認規則的排序。

?

能夠在最后一個結果集中指定Order by子句改變排序方式。

?

?

?

Union和Union All的差別


更多文章、技術交流、商務合作、聯系博主

微信掃碼或搜索:z360901061

微信掃一掃加我為好友

QQ號聯系: 360901061

您的支持是博主寫作最大的動力,如果您喜歡我的文章,感覺我的文章對您有幫助,請用微信掃描下面二維碼支持博主2元、5元、10元、20元等您想捐的金額吧,狠狠點擊下面給點支持吧,站長非常感激您!手機微信長按不能支付解決辦法:請將微信支付二維碼保存到相冊,切換到微信,然后點擊微信右上角掃一掃功能,選擇支付二維碼完成支付。

【本文對您有幫助就好】

您的支持是博主寫作最大的動力,如果您喜歡我的文章,感覺我的文章對您有幫助,請用微信掃描上面二維碼支持博主2元、5元、10元、自定義金額等您想捐的金額吧,站長會非常 感謝您的哦!!!

發表我的評論
最新評論 總共0條評論
主站蜘蛛池模板: 马山县| 稻城县| 宾川县| 乌拉特后旗| 诸暨市| 玉门市| 鹿泉市| 马尔康县| 南昌市| 凌云县| 尖扎县| 大同县| 明溪县| 洪泽县| 时尚| 静海县| 肃宁县| 台北县| 定陶县| 永新县| 奉贤区| 保德县| 虞城县| 通河县| 青铜峡市| 贵南县| 右玉县| 西平县| 山丹县| 仪征市| 岑溪市| 清原| 德惠市| 新乡县| 随州市| 义乌市| 丰县| 策勒县| 昆明市| 获嘉县| 宁化县|