- Oracle数据库是什么?
- Oracle 11g安装教程
- Oracle 12C安装
- Oracle数据库和实例
- 连接到Oracle数据库
- Oracle示例数据库
- 导入Oracle示例数据库
- Oracle基础入门
- Oracle数据定义
- Oracle数据类型
- Oracle修改数据
- Oracle查询数据
- Oracle连接表
- Oracle操作符
- Oracle约束
- Oracle高级部分
Oracle Intersect运算符
在本教程中,您将学习如何使用Oracle INTERSECT
运算符来比较两个查询,并返回由两者相交的行。
Oracle INTERSECT运算符介绍
Oracle INTERSECT
运算符比较两个查询的结果,并返回两个查询输出的不同行。
以下语句显示了INTERSECT
运算符的语法:
SELECT column_list_1 FROM T1 INTERSECT SELECT column_list_2 FROM T2;
与UNION运算符相似,使用INTERSECT
运算符时必须遵循以下规则:
- 两个查询中列的数量和顺序必须相同。
- 相应列的数据类型必须处于相同的数据类型组中,例如数字或字符。
Oracle INTERSECT说明图
假设有两个查询返回T1
和T2
表中的结果集。
T1
结果集包括:1
,2
,3
行。T2
结果集包括:2
,3
,4
行。
T1
和T2
的相交结果返回是2
和3
。因为这些是由两个查询输出的不同值。
下图说明了T1
和T2
的交集:
上图显示了INTERSECT
返回两个圆(或集合)的交集。
Oracle INTERSECT示例
请参阅示例数据库中的以下contacts
和employees
表的ER结构图。
以下语句使用INTERSECT
运算符来获取在contacts
和employees
表中都存在人员的姓氏(last_name
):
SELECT last_name FROM contacts INTERSECT SELECT last_name FROM employees ORDER BY last_name;
执行上面示例代码,得到以下结果 -
请注意,在最后的查询中放置了
ORDER BY
子句,以对由INTERSECT
运算符返回的结果集进行排序。
在本教程中,您学习了如何使用Oracle INTERSECT
运算符来比较两个查询,并返回两个查询输出的不同行。
上一篇:Oracle Union运算符
下一篇:Oracle Minus运算符
扫描二维码
程序员编程王