UNION 指令类似,INTERSECT 也是对两个 SQL 语句所产生的结果做处理的。不同的地方是, UNION 基本上是一个 OR (如果这个值存在于第一句或是第二句,它就会被选出),而 INTERSECT 则比较像 AND ( 这个值要存在于第一句和第二句才会被选出)。UNION 是联集,而 INTERSECT 是交集。
INTERSECT 的语法如下:
[SQL语句 1] INTERSECT [SQL语句 2];假设我们有以下的两个表格,
Store_Information 表格
Store_NameSalesTxn_DateLos Angeles150005-Jan-1999San Diego25007-Jan-1999Los Angeles30008-Jan-1999Boston70008-Jan-1999Internet Sales 表格
Txn_DateSales07-Jan-199925010-Jan-199953511-Jan-199932012-Jan-1999750而我们要找出哪几天有店面交易和网络交易。要达到这个目的,我们用以下的 SQL 语句:
SELECT Txn_Date FROM Store_Information INTERSECT SELECT Txn_Date FROM Internet_Sales;结果:
Txn_DateJan-07-1999请注意,在 INTERSECT 指令下,不同的值只会被列出一次。
转自:http://www.1keydata.com/cn/sql/sql-intersect.php