SQL UNION ALL 示例

如果使用UNION ALL,我们将在输出中看到重复的城市,如下所示:

SELECT city FROM customers
UNION ALL
SELECT city FROM suppliers

SQL UNION 联合

在本教程中,我们将学习如何使用SQL UNION组合两个或多个SQL查询的结果集。

使用ORDER BY子句的SQL UNION 示例

为了对组合的结果集进行排序,我们使用ORDERBY子句。
但是,我们必须在最后一个查询中放入ORDERBY子句。请注意,ORDER BY子句应用于组合结果集。

SELECT city FROM customers
UNION
SELECT city FROM suppliers
ORDER BY city

SQL UNION 例子

首先,我们可以从客户表查询客户所在的城市,从供应商表查询供应商所在的城市。然后,我们使用SQL UNION将两个结果集合并为一个结果集,如下所示:

SELECT city FROM customers
UNION
SELECT city FROM suppliers

我们可以看到结果是95行。

SQL UNION语法

SQL UNION将两个或多个SQL SELECT查询的结果集组合成一个结果集,该结果集包含所有查询中的所有行。
SQL UNION语句的语法如下:

SELECT column_list1 FROM table1
UNION (DISTINCT | ALL)
SELECT column_list2 FROM table2

将UNION运算符放在两个SQL SELECT语句之间。要组合多个查询结果集,必须遵循以下规则:

  • 所有查询中的列的顺序和数目必须相同。
  • 相应列的数据类型必须兼容,或至少可转换。

默认情况下,SQL UNION会消除重复的行。在计算重复时,SQL UNION操作符将所有空值视为单个空值。当与UNION组合时,ALL或DISTINCT操作符是可选的。

  • 使用ALL运算符,在组合结果集中会显示重复的行。
  • 使用DISTINCT运算符消除重复行。如果未显式使用任何运算符,则默认情况下使用DISTINCT运算符。
日期:2018-11-15 17:47:23 来源:oir作者:oir