oracle的标准写法,oracle 表连接特有写法与标准写法

oracle里表连接支持标准写法,但也有oracle特殊的写法,这两种写法在某些场景下会有差异,推荐使用标准写法,这里只是介绍表连接标准语法及了解oracle的特殊写法。

标准连接语法:

select table1.column , table2.column

from table1

[corss join table2]

[national jon table2]

[join table2 using (column)]

[join table2 on (table1.column=table2.column)]

[left | right | full outer join table2 on (table1.column=table2.column)];

实际使用中on关键字后的连接字段不用括号也可以正常使用。

多表连接:--先连接table4和table5并将其结果集命名为table2,再与table1连接

select table1.column,table2.column

from table1

inner join

( select table4.column,table5.column

from table4 inner join table5

on table4.column =table5.column ) as table2

on table1.column=table2.column;

等同于

select table1.column ,table2.column

from table1 ,(select table4.column,table5.column

from table4,table5

where table4.column=table5.column) as table2

where table1.column=table2.column;

--连接table1,table2,table3,没有连接顺序之分

select table1.column,table2.column,table3.column

from table1 inner join table2

on  table1.column=table2.column

inner join table3

on table1.column=table3.column;

等同于

select table1.column,table2.column,table3.column

from table1,table2.table3

where table1.column=table2.column and  table1.column=table3.column;

内连接:

标准写法:select  table.column , table2.column

from table1 inner join table2 on (table1.column=table2.column);

oracle 特殊写法:select table.column , table2.column

from table1 ,table2

where table1.column=table2.column;

左连接:

标准写法:select   table.column , table2.column

from table1 left join table2 on (table1.column=table2.column);

oracle 特殊写法:select  table.column , table2.column

from table1 ,table2

where table1.column=table2.column(+);

右连接:

标准写法:select table.column , table2.column

from table1 right join table2 on (table1.column=table2.column);

oracle 特殊写法:select   table.column , table2.column

from table1 ,table2

where table1.column(+)=table2.column;

全连接:

标准写法:select  table.column , table2.column

from table1 full join table2 on (table1.column=table2.column);

oracle 特殊写法:select  table.column , table2.column

from table1 ,table2

where table1.column(+)=table2.column(+);

本文出自 “天黑顺路” 博客,请务必保留此出处http://mjal01.blog.51cto.com/12140495/1975625

oracle 表连接特有写法与标准写法

标签:oracle 表连接

本条技术文章来源于互联网,如果无意侵犯您的权益请点击此处反馈版权投诉 本文系统来源:http://mjal01.blog.51cto.com/12140495/1975625

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值