Chinaunix首页 | 论坛 | 博客
  • 博客访问: 897112
  • 博文数量: 101
  • 博客积分: 2256
  • 博客等级: 大尉
  • 技术积分: 1481
  • 用 户 组: 普通用户
  • 注册时间: 2011-04-19 17:52
文章存档

2017年(1)

2013年(2)

2012年(25)

2011年(73)

分类: Oracle

2012-07-26 13:43:41

比如说表a有字段name, id,有两个记录
水1,1
水2,2
水3,3
表b有字段name, salary,有两个记录
水1,0.00001
水2,0.00001
水4,0.00004

select a.name, a.id, b.salary from a, b where a.name=b.name;
结果是
水1,1,0.00001
水2,2,0.00001

select a.name, a.id, b.salary from a, b where a.name=b.name(+);
结果是

水1,1,0.00001
水2,2,0.00001
水3,3

select a.name, a.id, b.salary from a, b where b.name(+)=a.name;

结果是

水1,1,0.00001
水2,2,0.00001
水3,3

select a.name, a.id, b.salary from a, b where a.name(+)=b.name;
结果是
水1,1,0.00001
水2,2,0.00001
              0.00004

所以无论左右连接怎么叫,只要记住(+)在哪边,哪边的所选项不足就要“+”(添加)空白项补足记录

阅读(3413) | 评论(0) | 转发(0) |
给主人留下些什么吧!~~