UNION ALL UNION 是MySQL能使用的聯集查詢,兩種語法相同但是效果不同,以下將會舉例介紹。 語法︰ <SELECT查詢一> UNION [ALL] <SELECT查詢二>

※特別注意︰要執行UNION [ALL]聯集查詢,上下兩個查詢所得的欄位數及欄位屬性必須相同

使用UNION ALL,會將上下兩個查詢的結果全部都列出來。 SELECT * FROM   user_order              LEFT JOIN              user              ON              user.id = user_order.user_id UNION ALL SELECT * FROM   user_order              RIGHT JOIN              user              ON              user.id = user_order.user_id 結果︰兩種查詢結果都會逐一呈現

使用UNION,當上下兩結果集合併時,將會把相同的結果排除重複,呈現不重複的資料結果 SELECT * FROM   user_order              LEFT JOIN              user              ON              user.id = user_order.user_id UNION SELECT * FROM   user_order              RIGHT JOIN              user              ON              user.id = user_order.user_id 結果:只呈現出兩種查詢不重複的資料結果

上方所示UNION語句範例,同時具有FULL OUTER JOIN的功能,但MySQL並不支援FULL OUTER JOIN,所以如果有需要使用到FULL OUTER JOIN的人可以使用上方所示的語法去做

 

其它文章

文章標籤
全站熱搜
創作者介紹
創作者 PG Levin Li 的頭像
PG Levin Li

程式開發學習之路

PG Levin Li 發表在 痞客邦 留言(0) 人氣(1,827)