在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操作符只返回共同的行,并且會自動去重,因此結果集中不會有重復的行。