mysql 的 union 操作符用于组合不同表或相同表中多个结果集,返回一个包含唯一行的组合结果。它需要确保列数和数据类型相同,使用 union all 时重复行将被保留,否则将被移除。
MySQL UNION 操作
UNION 操作符用于组合来自不同表或同一表的两个或更多结果集,返回一个包含唯一行的组合结果。
语法:
SELECT 列名1, 列名2, ... FROM 表1 UNION SELECT 列名1, 列名2, ... FROM 表2 [UNION ALL SELECT 列名1, 列名2, ... FROM 表3];
如何使用 UNION 操作符:
- 确保列数和数据类型匹配:参与 UNION 操作的表的列数和数据类型必须相同。
- 使用 UNION ALL 移除重复项:如果需要保留重复行,请使用 UNION ALL。否则,请使用 UNION。
示例:
假设我们有 “customers” 和 “orders” 两个表:
+---------+-------+ | customers | name | +---------+-------+ | 1 | John | | 2 | Mary | | 3 | Bob | +---------+-------+ +--------+---------+---------+ | orders | customer_id | product | +--------+---------+---------+ | 1 | 1 | Shoes | | 2 | 2 | Shirt | | 3 | 1 | Hat | +--------+---------+---------+
以下查询使用 UNION 操作符返回客户姓名以及他们购买的产品:
SELECT name, product FROM customers UNION SELECT name, product FROM orders;
结果:
+-------+---------+ | name | product | +-------+---------+ | John | Shoes | | Mary | Shirt | | Bob | Hat | +-------+---------+
想要了解更多内容,请持续关注码农资源网,一起探索发现编程世界的无限可能!
本站部分资源来源于网络,仅限用于学习和研究目的,请勿用于其他用途。
如有侵权请发送邮件至1943759704@qq.com删除
码农资源网 » mysql union怎么用
本站部分资源来源于网络,仅限用于学习和研究目的,请勿用于其他用途。
如有侵权请发送邮件至1943759704@qq.com删除
码农资源网 » mysql union怎么用