第 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