ITPub博客

首页 > Linux操作系统 > Linux操作系统 > oracle表中的连接类型

oracle表中的连接类型

原创 Linux操作系统 作者:anzi_oracle 时间:2009-02-23 09:46:23 0 删除 编辑

表:a,b
[表的连接分为:内连接和外连接]
内连接:
select a.a1,a.a2,b.b1,b.b2 from a,b  where a.id=b.id   //这是一种内连接
这是一种记录的完全匹配,表a和表b进行匹配,不匹配的记录不显示。
外连接:分为左连接和右连接
左连接:
  select a.a1,a.a2,b.b1,b.b2 from a,b  where a.id=b.id(+)   //这是一种左连接
     以左边的表(a)为主,全部显示,表a中不匹配的记录也会全部显示出来。
右连接:
  select a.a1,a.a2,b.b1,b.b2 from a,b  where a.id(+)=b.id   //这是一种右连接
     以右边的表(b)为主,全部显示,表b中不匹配的记录也会全部显示出来。


[表的子句]

 其中分相关子查询和无关子查询。
 in  :select * from a where a.id in (select b.id from b )  ;
 exists 子句  select * from a where a.id exists (select b.id from b )  ;
 说明:如果 exists 子句有返回集时,则左边sql语句显示数据,否则不显示数据。
  

来自 “ ITPUB博客 ” ,链接:http://blog.itpub.net/264732/viewspace-557405/,如需转载,请注明出处,否则将追究法律责任。

请登录后发表评论 登录
全部评论

注册时间:2009-01-13

  • 博文量
    4
  • 访问量
    21047