更新时间:2024-12-20 GMT+08:00
聚合操作
Union/Union ALL/Intersect/Except
- 语法格式
1
query UNION [ ALL ] | Intersect | Except query
- 语法说明
- UNION返回多个查询结果的并集。
- Intersect返回多个查询结果的交集。
- Except返回多个查询结果的差集。
- 注意事项
- 集合运算是以一定条件将表首尾相接,所以其中每一个SELECT语句返回的列数必须相同,列的类型一定要相同,列名不一定要相同。
- UNION默认是去重的,UNION ALL是不去重的。
- 示例
输出Orders1和Orders2的并集,不包含重复记录。
1 2
SELECT * FROM Orders1 UNION SELECT * FROM Orders2;
IN
- 语法格式
1 2 3
SELECT [ ALL | DISTINCT ] { * | projectItem [, projectItem ]* } FROM tableExpression WHERE column_name IN (value (, value)* ) | query
- 语法说明
IN操作符允许在where子句中规定多个值。若表达式在给定的表子查询中存在,则返回 true 。
- 注意事项
子查询表必须由单个列构成,且该列的数据类型需与表达式保持一致。
- 示例
输出Orders中NewProducts中product的user和amount信息。
1 2 3 4 5
SELECT user, amount FROM Orders WHERE product IN ( SELECT product FROM NewProducts );
父主题: 数据操作语句DQL