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 子句。

发表评论

访客

◎欢迎参与讨论,请在这里发表您的看法和观点。