mysql中union的用法

来源:这里教程网 时间:2026-02-28 18:10:19 作者:

MySQL 中 UNION 用法

UNION 运算符在 MySQL 中用于合并来自多个表或子查询的结果集。它只返回唯一的结果行,而不会重复相同的行。

语法:

<code>SELECT 列名1, 列名2, ...
FROM 表名1
UNION
SELECT 列名1, 列名2, ...
FROM 表名2
...
[UNION ALL]</code>

参数:

列名:要合并的列名。它们必须具有相同的顺序和数据类型。 表名:要合并结果集的表或子查询。 UNION ALL(可选):保留重复行。

用法:

UNION 主要用于合并来自不同表或子查询的互不相交的结果集。它只保留唯一的结果行。

例如,要合并表

customers
orders
的结果集,显示每个客户的信息和订单信息,可以使用以下查询:

<code>SELECT *
FROM customers
UNION
SELECT *
FROM orders;</code>

如果要保留重复行,可以使用

UNION ALL

<code>SELECT *
FROM customers
UNION ALL
SELECT *
FROM orders;</code>

注意:

UNION 运算符仅合并具有相同列数和数据类型的结果集。 如果列名不同,需要使用别名或通配符(*)来匹配它们。 如果列具有不同的数据类型,需要使用转换函数(如
CAST()
CONVERT()
) 来确保它们兼容。
UNION 运算符不考虑排序顺序,除非使用
ORDER BY
子句。

相关推荐