在SQL中,INTERSECT操作符用于在两个或多个SELECT语句的结果集之间找到共同的行,并返回这些共同行的交集。换句话说,INTERSECT操作符将两个查询的结果集进行比较,并返回在两个结果集中都存在的行。
例如,假设我们有两个表A和B,表A包含以下数据:
id | name |
---|---|
1 | John |
2 | Alice |
3 | Bob |
表B包含以下数据:
id | name |
---|---|
2 | Alice |
3 | Bob |
4 | Mary |
如果我们执行以下SQL查询:
SELECT * FROM A
INTERSECT
SELECT * FROM B;
结果将是:
id | name |
---|---|
2 | Alice |
3 | Bob |
这是因为在表A和表B中都存在的行为id为2和3的行。INTERSECT操作符只返回共同的行,并且会自动去重,因此结果集中不会有重复的行。