Oracle 多个查询结果的交集、差集和并集


union/union all运算:将查询的返回组合成一个结果, union all不过滤重复。

  1. SELECT product_id FROM order_items  
  2. UNION  
  3. SELECT product_id FROM inventories;  
  4.   
  5. SELECT location_id  FROM locations   
  6. UNION ALL   
  7. SELECT location_id  FROM departments;  

intersect运算:返回查询结果中相同的部分。

  1. SELECT product_id FROM inventories  
  2. INTERSECT  
  3. SELECT product_id FROM order_items;  

minus运算:返回在第一个查询结果中与第二个查询结果不相同的那部分行记录。

  1. SELECT product_id FROM inventories  
  2. MINUS  
  3. SELECT product_id FROM order_items;  

相关内容