第 53.1 节:UNION 操作符
UNION 操作符用于组合两个或多个 SELECT 语句的结果集(仅保留不同值)。
查询:(从 "Customers" 表和 "Suppliers" 表中选择所有不同的城市)
SELECT City FROM Customers
UNION
SELECT City FROM Suppliers
ORDER BY City;
结果:(记录数:10)
| City |
|---|
| Aachen |
| Albuquerque |
| Anchorage |
| Annecy |
| Barcelona |
| Barquisimeto |
| Bend |
| Bergamo |
| Berlin |
| Bern |
第 53.2 节:UNION ALL
UNION ALL 从 "Customers" 和 "Suppliers" 表中选择所有城市(包括重复值)。
查询:
SELECT City FROM Customers
UNION ALL
SELECT City FROM Suppliers
ORDER BY City;
结果:(记录数:12)
| City |
|---|
| Aachen |
| Albuquerque |
| Anchorage |
| Ann Arbor |
| Annecy |
| Barcelona |
| Barquisimeto |
| Bend |
| Bergamo |
| Berlin |
| Berlin |
| Bern |
第 53.3 节:带 WHERE 的 UNION ALL
使用 UNION ALL 从 "Customers" 和 "Suppliers" 表中选择所有德国城市(包含重复值)。这里需要在 WHERE 子句中指定 Country='Germany'。
查询:
SELECT City, Country FROM Customers WHERE Country='Germany'
UNION ALL
SELECT City, Country FROM Suppliers WHERE Country='Germany'
ORDER BY City;
结果:(记录数:14)
| City | Country |
|---|---|
| Aachen | Germany |
| Berlin | Germany |
| Berlin | Germany |
| Brandenburg | Germany |
| Cunewalde | Germany |
| Cuxhaven | Germany |
| Frankfurt | Germany |
| Frankfurt a.M. | Germany |
| Koln | Germany |
| Leipzig | Germany |
| Mannheim | Germany |
| Munchen | Germany |
| Munster | Germany |
| Stuttgart | Germany |