Oracle中对两个数据表交集的查询
来源:互联网 发布:coc地震法术数据2016 编辑:程序博客网 时间:2024/04/30 07:24
Oracle关系型数据库管理系统是世界上流行的关系数据库,它是一个极其强大、灵活和复杂的系统,据说,在使用oracle时应有这样的思想,那就是在SQL中几乎可以实现任何一种想法。
下面向大家介绍使用SQL查两个Oracle数据表查询的相同数据的方法,笔者感到这两种方法执行效率高、使用方便。
第一种方法:利用操作符intersect
intersect操作符用来合并两个查询,返回两个查询中都存在的记录,即返回两个查询结果的交集,前提是两个查询的列的数量和数据类型必须完全相同。
举例说明:
表A的数据结构:
表B的数据结构:
表A的数据为:
('1101 ','韩甲'),('1102 ','丁乙')
表B的数据为:
('1101 ','韩甲',99),('1102 ','丁乙',89),('1103 ','徐静',94)
在oracle中运行以下查询,图1显示了这个查询的结果:
查询结果如图2所示。
以上为笔者使用oracle7.3的体会,如有不当之处,请不吝赐教。
下面向大家介绍使用SQL查两个Oracle数据表查询的相同数据的方法,笔者感到这两种方法执行效率高、使用方便。
第一种方法:利用操作符intersect
intersect操作符用来合并两个查询,返回两个查询中都存在的记录,即返回两个查询结果的交集,前提是两个查询的列的数量和数据类型必须完全相同。
举例说明:
表A的数据结构:
中文名称 | 字段名 | 类型 | 长度 |
学号 | code | C | 4 |
姓名 | name | C | 8 |
表B的数据结构:
中文名称 | 字段名 | 类型 | 长度 |
学号 | Student_code | C | 4 |
姓名 | Student_name | C | 8 |
分数 | score | N | 3 |
表A的数据为:
('1101 ','韩甲'),('1102 ','丁乙')
表B的数据为:
('1101 ','韩甲',99),('1102 ','丁乙',89),('1103 ','徐静',94)
在oracle中运行以下查询,图1显示了这个查询的结果:
SQL>select code, name from A intersect select student_code,student_name from B; |
图1使用intersect操作符查询的结果 |
第二种方法: in子句
in子句可以在子查询中为where子句计算所得的值创建一个列表。这种方法与前一种方法有所不同的是,前一种方法比较多列但只使用一个intersect就行了,而一个in子句用来比较两个子查询的一列,比较几列就要使用几个in子句。下面举例说明如何取得两个查询的交集。
仍以A和B两张数据表为例,在oracle中运行以下查询,图2显示了这个查询的结果:
SQL>select code,name from A where A.code in (select student_code from B) and A.name in (select student_name from B) order by A.code; |
查询结果如图2所示。
图2使用in子句查询的结果 |
以上为笔者使用oracle7.3的体会,如有不当之处,请不吝赐教。
- Oracle中对两个数据表交集的查询
- Oracle中对两个数据表交集的查询
- Oracle中对两个数据表交集的查询(intersect和in)
- Oracle中对两个数据表交集的查询(intersect和in)
- oracle 中两个数据表间的拷贝
- Oracle 取两个表中数据的交集
- SQLServer中求两个字符串的交集
- c#中求两个数组的交集
- oracle 中 取两个表的交集 差集的问题
- 在Oracle的SQL中,如何计算两个日期时间段的交集天数
- oracle 中 取两个表的交集 差集的问题
- Oracle 取两个表中数据的交集并集差异集合
- Oracle 取两个表中数据的交集并集差异集合
- MySQL中对查询的结果集取交集如何实现?
- 查询两个时间段是否有交集的情况
- mysql 查询两个时间段是否有交集的情况
- oracle中sql语句中多个查询结果的交集、差集和并集
- oracle的查询数据表(一)
- DELPHI7 如何在编写可视组件中传递一个事件到组件外部?
- 从XML到Java的数据绑定之三
- T-SQL命令在SQL Server查询中的运用
- [原创]搭建桌面应用程序原型(第一部分)
- [原创]搭建桌面应用程序原型(第二部分)
- Oracle中对两个数据表交集的查询
- [原创]搭建桌面应用程序原型(第三部分)
- [原创]Java技巧:分布式Jtables处理[1]
- [原创]Java技巧:分布式Jtables处理[2]
- [原创]写一个仅仅压缩文件的例子
- [原创]Linux下进行Java开发的一些小技巧
- 香港电影回顾之年度经典(1980——1999)
- [原创]打破Java异常处理规则
- [原创]过滤器的应用