Oracle对两个数据表交集的查询
来源:asp之家 时间:2010-07-26 12:51:00
Oracle关系型数据库管理系统是世界上流行的关系数据库,它是一个极其强大、灵活和复杂的系统,据说,在使用oracle时应有这样的思想,那就是在SQL中几乎可以实现任何一种想法。
下面向大家介绍使用SQL查两个Oracle数据表查询的相同数据的方法,笔者感到这两种方法执行效率高、使用方便。
第一种方法:利用操作符intersect
intersect操作符用来合并两个查询,返回两个查询中都存在的记录,即返回两个查询结果的交集,前提是两个查询的列的数量和数据类型必须完全相同。
举例说明:
表A的数据结构:
表B的数据结构:
表A的数据为:
('1101 ','韩甲'),('1102 ','丁乙')
表B的数据为:
('1101 ','韩甲',99),('1102 ','丁乙',89),('1103 ','徐静',94)
在oracle中运行以下查询,图1显示了这个查询的结果:
第二种方法: in子句
in子句可以在子查询中为where子句计算所得的值创建一个列表。这种方法与前一种方法有所不同的是,前一种方法比较多列但只使用一个intersect就行了,而一个in子句用来比较两个子查询的一列,比较几列就要使用几个in子句。下面举例说明如何取得两个查询的交集。
仍以A和B两张数据表为例,在oracle中运行以下查询,图2显示了这个查询的结果:
查询结果如图2所示。
以上为笔者使用oracle7.3的体会,如有不当之处,请不吝赐教。
标签:oracle,数据库
0
投稿
猜你喜欢
Python OpenCV超详细讲解透视变换的实现
2021-08-02 21:19:48
Python中的基本数据类型讲解
2021-04-29 07:07:24
获取body标签的两种方法
2024-05-08 09:39:26
JS中数组重排序方法
2024-04-22 22:34:27
Python OpenCV阈值处理详解
2023-10-07 19:38:47
python编程控制Android手机操作技巧示例
2021-12-01 07:59:05
pytorch Variable与Tensor合并后 requires_grad()默认与修改方式
2021-08-05 09:11:59
Pandas读取并修改excel的示例代码
2022-08-18 23:27:34
async/await与promise(nodejs中的异步操作问题)
2024-04-22 22:43:39
Python分析最近大火的网剧《隐秘的角落》
2023-07-17 07:09:04
django开发post接口简单案例,获取参数值的方法
2022-10-20 06:45:00
一些常用的JavaScript函数(json)附详细说明
2024-04-10 16:14:12
为网页设计创建有效的配色方案
2011-08-31 12:55:57
一道求$b相对于$a的相对路径的php代码
2023-07-12 05:37:46
修炼设计能力的土办法
2008-07-16 10:34:00
Python中空格的转义字符方式
2021-07-02 01:22:33
SQLServer导出数据到MySQL实例介绍
2024-01-13 08:07:17
mysql 5.7.20\\5.7.21 免安装版安装配置教程
2024-01-26 14:05:33
javascript实现小型区块链功能
2024-04-18 09:29:10
重新编译PLSQL中的无效对象或者指定的对象 的方法
2009-02-26 10:41:00