这种在过滤条件中写个(+)的是什么意思呢?

image.png

小孩子 发布于 2020-11-17 10:35
1min目标场景问卷 立即参与
回答问题
悬赏:3 F币 + 添加悬赏
提示:增加悬赏、完善问题、追问等操作,可使您的问题被置顶,并向所有关注者发送通知
共5回答
最佳回答
0
luojian0323Lv7资深互助
发布于2020-11-17 10:38(编辑于 2020-11-17 10:40)

用什么什么数据库

(+) 表示外连接。条件关联时,一般只列出表中满足连接条件的数据。如果条件的一边出现(+),版则可列出该表中权在条件另一侧的数据为空的那些记录。比如两个表:员工表和工资表。员工表中有总经理、A、B、C四条记录,工资表中只有A、B、C三人的记录。如果写如下语句:

select 姓名,工资 from 员工表,工资表 where 员工表.姓名=工资表.姓名

那么只可能但出A、B、C三人的记录。

如果写成:

select 姓名,工资 from 员工表,工资表 where 员工表.姓名(+)=工资表.姓名

则可列出总经理及A、B、C三人的记录,只不过查询结果中总经理对应的”工资“列值为空。


最佳回答
0
zsh331Lv8专家互助
发布于2020-11-17 10:38

oracle的专用写法,类似于left join 或 right join

=========

具体内容,你看看这个文档分析吧;

https://blog.csdn.net/enter89/article/details/50580696


最佳回答
0
doudekaixinLv6中级互助
发布于2020-11-17 10:38

Oracle的左连右连。+在哪边说明哪边是次表。比如这个是A表数据全要。

最佳回答
0
shirokoLv6资深互助
发布于2020-11-17 10:45

涨知识

最佳回答
0
百理Lv4见习互助
发布于2020-11-17 10:48

涨知识

  • 6关注人数
  • 437浏览人数
  • 最后回答于:2020-11-17 10:48
    请选择关闭问题的原因
    确定 取消
    返回顶部