sql中的Union All怎么用-SQL
SQL 中的 UNION ALL
UNION ALL 是 SQL 中一个用于组合两个或多个 SELECT 语句结果集的运算符。它与 UNION 运算符类似,但 UNION ALL保留了重复的行,而 UNION 则会消除重复的行。
语法
SELECT-Statement UNION ALL SELECT-Statement
登录后复制
其中,SELECT-Statement 可以是任何有效的 SELECT 语句。
用法
UNION ALL 可用于以下场景:
- 合并结果集:将两个或多个来自不同表的 SELECT 语句的结果集合并到一个表中。
- 保留重复行:保留两个或多个 SELECT 语句中重复的行,以便进一步分析。
示例
示例 1:合并两个表的结果集
SELECT * FROM table1 UNION ALL SELECT * FROM table2
登录后复制
示例 2:保留重复行
SELECT customer_id FROM orders UNION ALL SELECT customer_id FROM payments
登录后复制
这个查询将保留来自 orders 表和 payments 表中的所有 customer_id,包括重复的 customer_id。
注意事项
- UNION ALL 运算符不会消除重复的行。
- 如果两个或多个 SELECT 语句的列名不同,则结果集中的列将使用第一个 SELECT 语句中的列名。
- UNION ALL 运算符会忽略 ORDER BY 子句。