SQL UNION 运算符
UNION 运算符用于组合两个或多个 SELECT 语句的结果集。
UNION 中的每个 SELECT 语句必须具有相同的列数
列还必须具有相似的数据类型
每个 SELECT 语句中的列也必须具有相同的顺序
UNION 语法
SELECT column_name(s) FROM table1
UNION
SELECT column_name(s) FROM table2;
使用 UNION ALL 堆叠多个表
A. 在 SQL Server 中组合表的语法
语法很简单,我们将单个表的选择查询与 UNION 或 UNION ALL 结合起来:
SELECT [EmpID]
,[Name]
,[LocationID]
,[Location]
,[Year]
,[Target]
FROM [TargetShire]
UNION
SELECT [EmpID]
,[Name]
,[LocationID]
,[Location]
,[Year]
,[Target]
FROM [TargetCentralMiddleEarth]
因此我们收到了合并后的表格:
SQL Server 中重复条目的处理
如果您注意了,员工“Frodo B”的重复条目。上面的示例中缺少。这是因为“UNION”命令会删除重复值。
如果我们也想拥有重复的条目,我们必须使用“UNION ALL”。语法与上例类似:
SELECT [EmpID]
,[Name]
,[LocationID]
,[Location]
,[Year]
,[Target]
FROM [TargetShire]
UNION ALL
SELECT [EmpID]
,[Name]
,[LocationID]
,[Location]
,[Year]
,[Target]
FROM [TargetCentralMiddleEarth]
参考:
https://community.powerbi.com/t5/Community-Blog/Combine-multiple-tables-with-UNION-UNION-ALL-in-SQL-Server/ba-p/1696694