参考资料

  1. MySQL DELETE 语句详细说明以及案例
  2. MySQL 查询数据详细说明以及案例
  3. MySQL 导出数据详细说明以及案例
  4. MySQL 命令详细说明以及案例
  5. MySQL 运算符详细说明以及案例
  6. MySQL WHERE 子句详细说明以及案例
  7. MySQL 插入数据详细说明以及案例
  8. MySQL 选择数据库详细说明以及案例

MySQL UNION 操作符详细说明以及案例

MySQL UNION 操作符详细说明

UNION 操作符用于合并两个或多个 SELECT 语句的结果集。它要求每个 SELECT 语句的列数和数据类型必须相同。UNION 默认会去除重复的行,如果需要保留重复行,可以使用 UNION ALL

语法:

SELECT column1, column2, ...
FROM table1
UNION
SELECT column1, column2, ...
FROM table2;

特点:

  1. 去重:UNION 会自动去除重复的行。

  2. 列数和数据类型:每个 SELECT 语句的列数和数据类型必须一致。

  3. 排序:可以在最后一个 SELECT 语句后使用 ORDER BY 对结果进行排序。

案例:

假设有两个表 employeescontractors,结构如下:

  • employees 表:

    idnameage
    1Alice30
    2Bob25
  • contractors 表:

    idnameage
    1Carol28
    2Bob25

案例 1:使用 UNION 合并两个表的数据并去重

SELECT name, age FROM employees
UNION
SELECT name, age FROM contractors;

结果:

nameage
Alice30
Bob25
Carol28

案例 2:使用 UNION ALL 合并两个表的数据并保留重复行

SELECT name, age FROM employees
UNION ALL
SELECT name, age FROM contractors;

结果:

nameage
Alice30
Bob25
Carol28
Bob25

案例 3:使用 UNION 并排序

SELECT name, age FROM employees
UNION
SELECT name, age FROM contractors
ORDER BY age DESC;

结果:

nameage
Alice30
Carol28
Bob25

通过以上案例,可以清楚地了解 UNION 操作符的使用方法和效果。