SQL 面试题
目录

SQL 中如何使用 INTERSECT 和 EXCEPT 运算符进行集合运算?

· 约 2 分钟读完 · 第 87 / 172 章

推荐答案

本题详细解读

INTERSECT 运算符

INTERSECT 运算符用于返回两个查询结果集的交集。它只返回在两个查询结果集中都存在的行。

  • 语法:

  • 示例: 假设有两个表 employees 和 managers,我们想找出既是员工又是经理的人:

EXCEPT 运算符

EXCEPT 运算符用于返回第一个查询结果集中存在但第二个查询结果集中不存在的行。

  • 语法:

  • 示例: 假设我们想找出那些是员工但不是经理的人:

注意事项

  1. 列数和数据类型:INTERSECT 和 EXCEPT 运算符要求两个查询的列数和数据类型必须一致。
  2. 去重:这两个运算符默认会去除重复的行。如果需要保留重复行,可以使用 UNION ALL 或其他方法。
  3. 性能:在处理大数据集时,INTERSECT 和 EXCEPT 可能会影响性能,建议在使用前进行性能测试。