初识Mysql(part19)--我需要知道的3条Mysql语句之组合查询
                                                            生活随笔
收集整理的這篇文章主要介紹了
                                初识Mysql(part19)--我需要知道的3条Mysql语句之组合查询
小編覺得挺不錯的,現在分享給大家,幫大家做個參考.                        
                                學習筆記,以代碼和例子堆砌而成,方便查閱。
 參考書籍:《Mysql必知必會》等
 要點:UNION、UNION ALL
此Blog會用到下面2個表.
temp_product2:
# id, pr_id, pro_name, price '1', '1001', 'Dog', '2000' '2', '1001', 'Cat', '1500' '3', '1002', 'Bunny', '100' '4', '1002', 'Bird', '200' '5', '1003', 'Fish', '50'temp_product3:
# id, pr_id, pro_name, price '1', '1002', 'Pen', '60' '2', '1002', 'Book', '50' '3', '1002', 'Rule', '10' '4', '1003', 'Apple', '5' '5', '1003', 'Orange', '3' '6', '1005', 'Toy', '5000'- 不包含重復行的組合查詢
涉及一個表:
SELECT pr_id, pro_name, price FROM temp_product3 WHERE price<50 UNION SELECT pr_id, pro_name, price FROM temp_product3 WHERE pr_id=1002;查詢結果:
# pr_id, pro_name, price '1002', 'Rule', '10' '1003', 'Apple', '5' '1003', 'Orange', '3' '1002', 'Pen', '60' '1002', 'Book', '50'涉及兩個表:
SELECT pr_id, pro_name, price FROM temp_product3 WHERE price<50 UNION SELECT pr_id, pro_name, price FROM temp_product2 WHERE pr_id=1001;查詢結果:
# pr_id, pro_name, price '1002', 'Rule', '10' '1003', 'Apple', '5' '1003', 'Orange', '3' '1001', 'Dog', '2000' '1001', 'Cat', '1500'- UNION規則
①UNION必須由兩條或兩條以上的SELECT語句組成,語句之間用關鍵字UNION分隔。
②UNION中的每個查詢必須包含相同的列,表達式或聚集函數。
③列的數據類型不需要完全相同,但必須兼容。
- 包含重復行的組合查詢
查詢結果:
# pr_id, pro_name, price '1002', 'Rule', '10' '1003', 'Apple', '5' '1003', 'Orange', '3' '1002', 'Pen', '60' '1002', 'Book', '50' '1002', 'Rule', '10'- 對組合查詢結果進行排序
查詢結果:
# pr_id, pro_name, price '1003', 'Orange', '3' '1003', 'Apple', '5' '1002', 'Rule', '10' '1002', 'Book', '50' '1002', 'Pen', '60'注意!在用UNION組合查詢時,只能使用一條ORDER BY子句,它必須出現在最后一條SELECT語句之后。
創作挑戰賽新人創作獎勵來咯,堅持創作打卡瓜分現金大獎總結
以上是生活随笔為你收集整理的初识Mysql(part19)--我需要知道的3条Mysql语句之组合查询的全部內容,希望文章能夠幫你解決所遇到的問題。
 
                            
                        - 上一篇: 非科班生如何浑水摸鱼在省级大数据竞赛中获
- 下一篇: 中班美术教案《奇妙的动物车》反思
