Oracle数据关联查询

转载 2015年11月20日 22:49:25

Oracle数据关联查询

关联在Oracle数据查询时会经常用到,灵活的应用关联可以解决很多实际应用的问题.下面给出一些示例:

建表

create table ab

            (

            ab_id  number(5),

            ab_name varchar2(30)

            );

            

            create table bb

            (

            bb_id  number(5),

            bb_name varchar2(30)

            );

插入数据

insert into ab(ab_id,ab_name) values(1,'1ab_name');

            insert into ab(ab_id,ab_name) values(2,'2ab_name');

            insert into ab(ab_id,ab_name) values(3,'3ab_name');

            

            insert into bb(bb_id,bb_name) values(1,'1bb_name');

            insert into bb(bb_id,bb_name) values(2,'2bb_name');

            insert into bb(bb_id,bb_name) values(4,'4bb_name');

            insert into bb(bb_id,bb_name) values(6,'6bb_name');

等值关联(全关联)

select a.ab_id,a.ab_name,b.bb_name from ab a,

            bb b

            where a.ab_id=b.bb_id;

返回结果

AB_ID AB_NAME BB_NAME

            1 1ab_name 1bb_name

            2 2ab_name 2bb_name

返回两个表中所有能匹配的记录,不能匹配的记录不返回。

左关联

select ab_id,ab_name, bb_name 

            from ab a left join  bb b

            on a.ab_id=b.bb_id;

            同

            select ab_id,ab_name, bb_name 

            from ab a , bb b

            where a.ab_id=b.bb_id(+);

返回结果

AB_ID AB_NAME BB_NAME

            1 1ab_name 1bb_name

            2 2ab_name 2bb_name

            3 3ab_name

返回左边表的左右记录,在右边表中没有对应记录的右表字段显示为空。

右关联

select ab_id,ab_name, bb_name 

            from ab a right join  bb b

            on a.ab_id=b.bb_id;

            同

            select ab_id,ab_name, bb_name 

            from ab a , bb b

            where a.ab_id(+)=b.bb_id;

返回结果:

AB_ID AB_NAME BB_NAME

            1 1ab_name 1bb_name

            2 2ab_name 2bb_name

            4bb_name

            6bb_name

返回右边表中所有的记录,在右边表不能匹配的记录行上,左边表对应的字段显示为空。

完全外关联

select ab_id,ab_name, bb_name 

            from ab a full join  bb b

            on a.ab_id=b.bb_id;

返回结果

AB_ID AB_NAME BB_NAME

            1 1ab_name 1bb_name

            2 2ab_name 2bb_name

            3 3ab_name 

            6bb_name

            4bb_name

返回两个表所有的结果,如果在关联条件上没有对应的记录,那么将在该列上显示为空。

全关联返回的结果集范围最小。完全外关联返回的结果范围最大,是否左关联和右关联并集;全关联是左关联和右关联的交集。

Oracle数据关联查询

转自:http://www.cnblogs.com/rootq/articles/1089289.html 关联在Oracle数据查询时会经常用到,灵活的应用关联可以解决很多实际应用的问题.下面...

Oracle数据关联查询

一、软件测试的基本概念 软件测试的定义:测试是为fas

Oracle数据查询V2.1

  • 2007年04月25日 20:47
  • 238KB
  • 下载

Oracle数据仓库查询优化技术

Oracle数据仓库查询优化技术(1) ZDNet软件频道 时间:2007-08-31 作者:宁海元 | IT168 我要评论() 本文关键词:Oracle 数据仓库 查询 优化...
  • haiross
  • haiross
  • 2014年02月20日 17:20
  • 671

Oracle数据查询(界面优化版)

  • 2007年06月14日 15:32
  • 980KB
  • 下载

Oracle数据查询V2.2

  • 2007年05月08日 14:33
  • 238KB
  • 下载

本地的手机号码归属地查询-oracle数据

最近做的项目中,有个功能是手机归属地查询,因为项目要在内网下运行,所以不能用提供的webservice,只好在网上找手机归属地的数据,很多都是access的,我们的项目是用oracle,只好自己转吧,...
  • ziekekg
  • ziekekg
  • 2014年11月11日 16:44
  • 464

oracle数据查询

  • 2011年07月01日 12:39
  • 1.1MB
  • 下载

Oracle数据查询

  • 2007年04月19日 15:41
  • 215KB
  • 下载
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:Oracle数据关联查询
举报原因:
原因补充:

(最多只允许输入30个字)