ORACLE 11g

疯狂的犹太人 2011-05-07 11:33:39
在Oracle 11g中
两个表之间的自然连接有时候要加上(+),如下:
学生表: SNO,NAME
课程表: CNO ,CNAME 要求SNO的SUBSTR(SNO,3,1) = CNO取数据,
如下写法:
SUBSTR(R1.SNO,3,1) = R2.CNO(+)或SUBSTR(R1.SNO,3,1) = R2.CNO,

(+)加或者不加,查询出来的数据条数不一样,不知道为什么,请高手指点,

在等式后面添加(+)有啥作用?
...全文
69 4 打赏 收藏 转发到动态 举报
写回复
用AI写文章
4 条回复
切换为时间正序
请发表友善的回复…
发表回复
--小F-- 2011-05-07
  • 打赏
  • 举报
回复
ORACLE中的(+)号相当于连接

但是这个方式不符合ASII 92标准 现在的ORACLE里面一般也还是用LEFT JOIN 和RIGHT JOIN
AcHerat 元老 2011-05-07
  • 打赏
  • 举报
回复
具体看看SQL的left join 和 right join
再去看看ORACLE里加(+) 的例子。
AcHerat 元老 2011-05-07
  • 打赏
  • 举报
回复
加 (+) 和SQL的左右链接一样

ORACLE里貌似左边加 (+) 类似SQL的 左连接,右类似。
疯狂的犹太人 2011-05-07
  • 打赏
  • 举报
回复
明白了,谢谢

34,587

社区成员

发帖
与我相关
我的任务
社区描述
MS-SQL Server相关内容讨论专区
社区管理员
  • 基础类社区
  • 二月十六
  • 卖水果的net
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧