91超碰碰碰碰久久久久久综合_超碰av人澡人澡人澡人澡人掠_国产黄大片在线观看画质优化_txt小说免费全本

溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

MySQL查詢數據之合并查詢結果的案例

發布時間:2021-03-17 10:00:54 來源:億速云 閱讀:486 作者:小新 欄目:MySQL數據庫

小編給大家分享一下MySQL查詢數據之合并查詢結果的案例,相信大部分人都還不怎么了解,因此分享這篇文章給大家參考一下,希望大家閱讀完這篇文章后大有收獲,下面讓我們一起去了解一下吧!

.

  • 利用union關鍵字,可以給出多條select語句,并將它們的結果組合成單個結果集。合并時,兩個表對應的列數和數據類型必須相同。各個select語句之間使用union或union all 關鍵字分隔。

  • union不使用關鍵字all,執行的時候刪除重復的記錄,所有返回的行都是唯一的;使用關鍵字all的作用是不刪除重復行也不對結果進行自動排序。
    基本語法格式為:

select column,...from table1union [all]select column,... from table2

【例1】查詢所有價格小于9的水果的信息,查詢s_id等于101和103所有的水果的信息,使用union連接查詢結果,SQL語句如下:

mysql> select s_id,f_name,f_price    -> from fruits    -> where f_price <9.0
    -> union all
    -> select s_id,f_name,f_price    -> from fruits    -> where s_id in(101,103);+------+------------+---------+| s_id | f_name     | f_price |+------+------------+---------+|  104 | lemon      |    6.40 ||  101 | apple      |    5.20 ||  103 | apricot    |    2.20 ||  104 | berry      |    7.60 ||  107 | xxxx       |    3.60 ||  105 | melon      |    8.20 ||  101 | cherry     |    3.20 ||  105 | xbabay     |    2.60 ||  102 | grape      |    5.30 ||  107 | xbabay     |    3.60 ||  101 | apple      |    5.20 ||  103 | apricot    |    2.20 ||  101 | blackberry |   10.20 ||  101 | cherry     |    3.20 ||  103 | coconut    |    9.20 |+------+------------+---------+15 rows in set (0.06 sec)

union將多個select語句的結果組合成一個結果集合。可以分開查看每個select語句的結果:

mysql> select s_id,f_name,f_price    -> from fruits    -> where f_price < 9.0;+------+---------+---------+| s_id | f_name  | f_price |+------+---------+---------+|  104 | lemon   |    6.40 ||  101 | apple   |    5.20 ||  103 | apricot |    2.20 ||  104 | berry   |    7.60 ||  107 | xxxx    |    3.60 ||  105 | melon   |    8.20 ||  101 | cherry  |    3.20 ||  105 | xbabay  |    2.60 ||  102 | grape   |    5.30 ||  107 | xbabay  |    3.60 |+------+---------+---------+10 rows in set (0.00 sec)mysql> select s_id,f_name,f_price    -> from fruits    -> where s_id in(101,103);+------+------------+---------+| s_id | f_name     | f_price |+------+------------+---------+|  101 | apple      |    5.20 ||  103 | apricot    |    2.20 ||  101 | blackberry |   10.20 ||  101 | cherry     |    3.20 ||  103 | coconut    |    9.20 |+------+------------+---------+5 rows in set (0.00 sec)

由分開查詢結果可以看到,第1條select語句查詢價格小于9的水果,第2條select語句查詢供應商101和103提供的水果。

  • 使用union將兩條select語句分隔開,執行完畢之后把輸出結果組合成單個的結果集,并刪除重復的記錄。

  • 使用union all包含重復的行。union從查詢結果集中自動去除了重復的行,如果要返回所有匹配的行,而不進行刪除,可以用union all。

【例2】查詢所有價格小于9的水果的信息,查詢s_id等于101和103的所有水果的信息,使用union all連接查詢結果,SQL語句如下:

mysql> select s_id,f_name,f_price    -> from fruits    -> where f_price<9.0
    -> union all
    -> select s_id,f_name,f_price    -> from fruits    -> where s_id in(101,103);+------+------------+---------+| s_id | f_name     | f_price |+------+------------+---------+|  104 | lemon      |    6.40 ||  101 | apple      |    5.20 ||  103 | apricot    |    2.20 ||  104 | berry      |    7.60 ||  107 | xxxx       |    3.60 ||  105 | melon      |    8.20 ||  101 | cherry     |    3.20 ||  105 | xbabay     |    2.60 ||  102 | grape      |    5.30 ||  107 | xbabay     |    3.60 ||  101 | apple      |    5.20 ||  103 | apricot    |    2.20 ||  101 | blackberry |   10.20 ||  101 | cherry     |    3.20 ||  103 | coconut    |    9.20 |+------+------------+---------+15 rows in set (0.00 sec)

可以看到,這里總的記錄等于兩條select語句返回的記錄數之和,連接查詢結果并沒有去除重復的行。

union和union all的區別:

  • 使用union all的功能是不刪除重復行,all關鍵字語句執行時所需要的資源少, 所以盡可能的使用它。

  • 確定查詢結果中不會有重復數據或者不需要去掉重復數據的時候,應當盡量使用uninon all以提高查詢效率。

以上是“MySQL查詢數據之合并查詢結果的案例”這篇文章的所有內容,感謝各位的閱讀!相信大家都有了一定的了解,希望分享的內容對大家有所幫助,如果還想學習更多知識,歡迎關注億速云行業資訊頻道!

向AI問一下細節

免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。

AI

靖西县| 喀喇沁旗| 肥乡县| 哈尔滨市| 常熟市| 沙湾县| 兰州市| 繁峙县| 平塘县| 吉林省| 武城县| 江孜县| 维西| 新沂市| 阳谷县| 尖扎县| 西青区| 大石桥市| 韶山市| 志丹县| 喜德县| 沾益县| 谢通门县| 禄丰县| 崇义县| 顺平县| 宝山区| 普格县| 利津县| 永和县| 黑水县| 青州市| 华阴市| 保德县| 济源市| 静海县| 永春县| 洪湖市| 镇巴县| 望都县| 微山县|