MySQL UNION运算符用于合并2个或更多SELECT语句的结果集。它将删除各种SELECT语句之间的重复行。
UNION操作符中的每个SELECT语句必须在结果集中具有相同数量的字段(并且字段的数据类型相似即能够相互转换)。
MySQL中UNION运算符的语法为:
SELECT expression1, expression2, ... expression_n FROM tables [WHERE conditions] UNION [DISTINCT | ALL] SELECT expression1, expression2, ... expression_n FROM tables [WHERE conditions];
说明 两个SELECT语句中expression的数量必须相等。 来自UNION运算符的第一个SELECT语句的列名用作结果集的列名。
说明
SELECT
supplier_id
FROM
suppliers
UNION
order_details;
从多个SELECT语句中返回一个字段(两个字段具有相同的数据类型):
MySQL UNION运算符可以使用ORDER BY子句对查询结果进行排序。
supplier_id, supplier_name
WHERE
supplier_id <= 500
company_id, company_name
companies
company_name =
'Apple'
ORDER
BY
2;
在这个例子中,由于两个SELECT语句之间的列名不同,所以在ORDER BY子句中使用位置进行排序更好。即ORDER BY 2表示按照结果集中第2列进行排序。supplier_name / company_name字段位于结果集中的第2位置。
原文链接:https://codingdict.com/