Oracle 数据库基础学习 (五) 多表查询

多表查询:查询结果需要用到两个或者以上表,此时需要多表连接,产生多表查询

1、内连接(等值连接)

示例:将两个表内容连接显示

select * from dept d, emp e where d.deptno = e.deptno;

注意:只有当d.deptno = e.deptno条件满足,内容才会显示,否则不显示

2 、外连接:让等值判断左右两边有一边的数据可以全部显示出来,使用外连接方式时使用”(+)”

格式:  

左外连接:字段=字段(+)

右外连接:字段(+)=字段

示例:显示雇员的姓名,职位和领导姓名

分析:

确认要使用的数据:

1、  emp表的雇员姓名,职位(别名为e)

2、  emp表的领导姓名(别名为m)

确认相连的关系:

e.mgr = m.empno;

如果某个雇员没有领导的时候,其内容将会显示不出来,此时需要用外连接,让其中一边的表在没有领导的情况下,也可以显示出来。

左、右外连接可以不区分,但是最重要的是把要显示的内容显示出来就行。

select e.ename, e.job, m.ename
from emp e, emp m
where e.mgr = m.empno(+);

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值