在mysql中,可以利用UNION運算子來合併查詢結果,該運算子用於將兩個以上的SELECT語句的查詢結果合併到一起,然後移除相同的記錄;語法「查詢語句1 union 查詢語句2 union ....」。
本教學操作環境:windows7系統、mysql8版本、Dell G3電腦。
在mysql中,可以利用UNION運算子來合併查詢結果。
UNION 運算子用於連接兩個以上的 SELECT 語句的結果組合到一個結果集合中。多個 SELECT 語句會刪除重複的資料。
語法:
查询语句1 union 查询语句2 union ....
應用場景:
要查詢的結果來自多個表,且多個表沒有直接的連接關係,但查詢的資訊一致時
特點:★
1、要求多條查詢語句的查詢列數是一致的!
2、要求多條查詢語句的查詢的每一列的類型和順序最好一致
#3、union關鍵字預設去重,如果使用union all 可以包含重複項
範例:查詢部門編號>90或郵件包含a的員工資訊
#下面我就直接po截圖和程式碼
#联合查询 # SELECT * FROM employees WHERE department_id > 90 OR email LIKE '%a%'; #使用UNION联合查询 SELECT * FROM employees WHERE department_id > 90 UNION SELECT * FROM employees WHERE email LIKE '%a%'; # USE test; #案例:查询中国用户中女性的信息以及外国用户中女性的用户信息 SELECT c.`c_id`, c.`c_name`, c.`c_sex` FROM china c WHERE c_sex = '女' UNION SELECT f.`f_id`, f.`f_name`, f.`f_sex` FROM foreignUser f WHERE f_sex = 'female'; #china表和foreignUser表中都有66号韩梅梅(UNION会去重) SELECT c.`c_id`, c.`c_name` FROM china c WHERE c_sex = '女' UNION SELECT f.`f_id`, f.`f_name` FROM foreignUser f WHERE f_sex = 'female'; #china表和foreignUser表中都有66号韩梅梅(UNION ALL 不会去重) SELECT c.`c_id`, c.`c_name` FROM china c WHERE c_sex = '女' UNION ALL SELECT f.`f_id`, f.`f_name` FROM foreignUser f WHERE f_sex = 'female';
使用UNION
使用UNION ALL
#【相關推薦:mysql影片教學】
以上是mysql查詢結果怎麼合併的詳細內容。更多資訊請關注PHP中文網其他相關文章!