永发信息网

oracle语句的级联问题,这个语句e.mgr=m.empno(+) 谁可以给我讲讲这个是什么意思还带有(+)详细解答哦!

答案:5  悬赏:50  手机版
解决时间 2021-03-28 06:54
oracle语句的级联问题,这个语句e.mgr=m.empno(+) 谁可以给我讲讲这个是什么意思还带有(+)详细解答哦!
最佳答案
(+)是外连接,表示当前条件等号左侧的表为主表,如果等号条件成立,查询中如果有等号右侧表中的字段,按照关联条件查询出数据,如果右侧没有条件符合,那么查询中补空。
举个例子,假设emp和dept表数据如下:
emp: emp_id, emp_name, dept_id
001 张三 10
002 李四 10
003 王五 20
004 赵六 30
dept: dept_id dept_name
10 部门1
20 部门2

查询语句:select emp_id, emp_name, dept_name
from emp, dept
where emp.dept_id = dept.dept_id(+);
从上面两表能看出来,emp表中的最后一行数据,dept_id为30,在dept表没有对应的数据,使用直连(即不带加号)只能查询到前三行数据,可是使用外连,以emp为主表,那么emp表的数据就都可以查到。结果如下:
emp_id emp_name dept_name
001 张三 部门1
002 李四 部门1
003 王五 部门2
004 赵六 NULL(空,没有数据)
全部回答
左连接。 employee department
(+)是oracle的语法,相当于SQL99标准当中的LETF JOIN,RIGHT JOIN ,如果(+)出现在左连表示RIGHT JOIN ,出现在右连表示LEFT JOIN 。这种写法只限于oracle数据,如果迁移到其它数据库无法运行.
scott用户中有什么表建议用scott用户登录到数据库后执行以下语句:
SELECt object_name FROM user_objects WHERe object_type='TABLE'
一楼完全误导啊。。(+)真是外连接的意思,你这么写就相当于是左外连接,也就是e.mgr这个表的内容将全部被查询
第二个问题这写表是数据库的实例表,没有中文名,emp代表employer也就是雇员表,而dept代表的department也就是部门表
这个(+)代表内连接的意思,举个例子 MGR字段对应的EMPNO字段如果没有数的话也显示结果。
例子:不使用(+)结果是:
mgr empno
cleck 7759
jobs 8792
cleck 8100
这样对显示2个字段都有值才显示。
如果加(+)
mgr empno
cleck 7759
jobs 8792
cleck 8100
linkes
-----linkes 对应的没有值但是也显示,+在那边那边就有无值.
我要举报
如以上问答信息为低俗、色情、不良、暴力、侵权、涉及违法等信息,可以点下面链接进行举报!
大家都在看
红标哈佛h2 是国五排放吗
犀牛的体重是19600千克,大约是几吨
等体积等浓度的弱酸和强酸,谁的H+浓度大
天津市还迁房可以申请不动产权证吗
交通设施产品科立德的怎么样?
雪落长白十三载 故人心归西湖畔 什么意思
2012年奥林匹克运动会林丹参加了什么
墨子造木牛流马、机器人和木鸟等一系列创造引
蜂蜜忌食什么?
求助15款17R2本WIN7系统安装模式怎么设置
料理机什么牌子最好?主要用途是家用加工生活
为什么有些人总说懒得用脑子,实际上就是自己
鹅肉是发物吗 那些人不能吃鹅肉
经期可以喝感冒冲剂吗
用“恳求”造句
推荐资讯
一些优美又伤感的关于毕业的句子?
图集06ms201-3第99页
求《不吃早餐才是一件很嘻哈的事》伴奏谢谢了
女朋友天天看淘宝、白天看、晚上睡觉前也一直
填空题若点(-1,0)与点(2,-1)分别位于直
想要一份完整的母亲节联谊会的主持台词。越详
谁有霍山县东湖名都的相关情况
芝麻信用里的领英、钉钉什么意思
和不太正常的人,该怎样相处
求apache 和 mysql 和 php 的最新版本下载地
1985年修建的楼顶加了一层会拆除吗
张爱玲一生最爱吃的川味干烧鲫鱼,看看怎么做
正方形一边上任一点到这个正方形两条对角线的
阴历怎么看 ?