UNION ALL 與UNION 是MySQL能使用的聯集查詢,兩種語法相同但是效果不同,以下將會舉例介紹。
語法︰
<SELECT查詢一>
UNION [ALL]
<SELECT查詢二>
使用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的人可以使用上方所示的語法去做
- 首頁
- JAVA 目錄
- JAVA WEB 目錄
- JAVA 其他未分類 目錄
- Grails目錄
- jQuery 目錄
- Apache 目錄
- JavaScript 目錄
- Spring + Hibernate 目錄
- Hibernate 目錄
- Linux 目錄
- 程式開發工具目錄
- MySQL 目錄
- PHP目錄
- C/C++ 目錄
- Google App Engine 目錄
- HTML5/CSS3
- 程式開發基本資訊
- Android
- Oracle 目錄
- Struts 目錄