oracle多表查询

oracle 同时被 3 个专栏收录
16 篇文章 1 订阅
219 篇文章 2 订阅
19 篇文章 1 订阅

多表查询首先要避免笛卡尔集,要避免笛卡尔集,那么查询条件不得少于表的个数-1.
1.显示雇员名,雇员工资以及雇员所在的部门:

这里写图片描述

2.显示部门号为10的部门名、员工名和工资:

这里写图片描述

3.显示各个雇员的姓名,工资以及工资的级别:
这里写图片描述

4.显示雇员名,雇员工资及所在部门的名字,并按部门排序

这里写图片描述

**

自连接

**

5.显示出FORD的上级领导名称:
这里写图片描述

6.显示工资比部门30的所有员工的工资高的员工的姓名、工资和部门号:

这里写图片描述

7.显示工资比部门30的任意一个员工的工资高的员工姓名、工资和部门号:

这里写图片描述

8.查询与SMITH的部门和岗位完全相同的所有雇员:

这里写图片描述

9.显示出工资高于自己所在部门平均工资的所有雇员信息:

思路:先查出各个部门的平均工资和部门编号,再把把查询的结果看作是一张表。

select * from emp e,(select deptno,avg(sal) as avgsal from emp group by deptno) avg_sal where e.deptno=avg_sal.deptno and e.sal>avg_sal.avgsal;

这里写图片描述

**

总结

**
当在from子句中使用子查询时,该子查询会被作为一个视图来对待,因此叫做内嵌视图,当在from子句中使用子查询时,必须给 子查询指定别名,给子查询指定别名不使用as,给列指定别名要使用as。

  • 0
    点赞
  • 0
    评论
  • 0
    收藏
  • 一键三连
    一键三连
  • 扫一扫,分享海报

相关推荐
©️2020 CSDN 皮肤主题: 编程工作室 设计师:CSDN官方博客 返回首页
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值