相交

两个行集的相交产生一个表。它包含同时存在两个原始表的行。使用关键字 EXISTS 或 IN 来引入显示两个集合相交的子查询。下图说明了相交集合运算。

图: 相交集合运算


This figure is described in the surrounding text.

以下查询是一个嵌套 SELECT 语句的示例,它显示了 stockitems 表的交集。该结果包含出现在这两个集合中的所有元素并返回以下行。

图: 查询

SELECT stock_num, manu_code, unit_price FROM stock
          WHERE stock_num IN
          (SELECT stock_num FROM items)
          ORDER BY stock_num;

图: 查询结果

stock_num manu_code unit_price
              
              1 HRO          $250.00
              1 HSK          $800.00
              1 SMT          $450.00
              2 HRO          $126.00
              3 HSK          $240.00
              3 SHM          $280.00
              ⋮
              306 SHM          $190.00
              307 PRC          $250.00
              309 HRO           $40.00
              309 SHM           $40.00