在MySQL数据库中,UNION和UNION ALL是用于合并多个查询结果集的操作符。它们允许我们将多个SELECT语句的结果合并为一个结果集。本文将详细介绍UNION和UNION ALL操作符的用法,并提供相应的源代码示例。
-
UNION操作符:
UNION操作符用于将两个或多个SELECT语句的结果合并为一个结果集,并自动去重。换句话说,它将返回唯一的行,消除重复的行。下面是UNION操作符的语法:
SELECT column1, column2, ... FROM table_name1 UNION SELECT column1, column2, ... FROM table_name2; ``` 在上述语法中,两个SELECT语句必须具有相同数量的列,并且相应的列的数据类型必须兼容。 下面是一个使用UNION操作符的示例:
SELECT name, age FROM employees
UNION
SELECT name, age FROM contractors;在上述示例中,我们从两个不同的表(employees和contractors)中选择姓名和年龄,并使用UNION操作符将它们合并为一个结果集。
-
UNION ALL操作符:
UNION ALL操作符也用于将多个SELECT语句的结果合并为一个结果集,但它不会去重。换句话说,它将返回所有行,包括重复的行。下面是UNION ALL操作符的语法:
SELECT column1, column2, ... FROM table_name1 UNION ALL SELECT column1, column2, ... FR