📅  最后修改于: 2020-11-15 03:58:43             🧑  作者: Mango
在Oracle中,INTERSECT运算符用于返回2个或更多SELECT语句的结果。它从复合SELECT查询中选择公用或相交的记录。
句法
SELECT expression1, expression2, ... expression_n
FROM table1
WHERE conditions
INTERSECT
SELECT expression1, expression2, ... expression_n
FROM table2
WHERE conditions;
1)expression1,expression2,… expression_n:它指定要检索的列。
2)table1,table2:它指定要从中检索记录的表。
3)条件:它指定要选择的记录必须满足的条件。
供应商表
供应商数据
Order_details表
Order_details数据
SELECT supplier_id
FROM suppliers
INTERSECT
SELECT supplier_id
FROM order_details;
在上面的示例中,supplier_id出现在Suppliers和order_details表中。现在,公共条目将返回到结果集中。
输出量
供应商表
供应商数据
客户表
客户资料
SELECT supplier_id, last_name, first_name
FROM supplier
WHERE first_name <> 'dhirubhai'
INTERSECT
SELECT customer_id, last_name, first_name
FROM customer
WHERE customer_id < 5;
输出量
上面的示例从供应商表中返回记录,其中Supplier_id,last_name和first_name值与客户表的customer_id,last_name和first_name值匹配。