oracle数据库。查询部门平均工资,平且显示工资等级,按部门分组,sql语句怎么写
答案:3 悬赏:40 手机版
解决时间 2021-04-29 07:35
- 提问者网友:战魂
- 2021-04-29 00:45
oracle数据库。查询部门平均工资,平且显示工资等级,按部门分组,sql语句怎么写
最佳答案
- 五星知识达人网友:未来江山和你
- 2021-04-29 01:35
如果是scott下的那几张表的话
select t1.deptno,
t1.dname,
t1.avgsal,
max(case
when t1.avgsal between t2.losal and t2.hisal then
t2.grade
end) grade
from (select a.deptno, b.dname, round(avg(a.sal), 2) avgsal
from emp a, dept b
where a.deptno = b.deptno
group by a.deptno, b.dname) t1,
salgrade t2
group by t1.deptno, t1.dname, t1.avgsal
order by t1.deptno;查询结果
追问有没有简单一点的,我刚学数据库,你写的有好多都看不懂。这是我们老师布置的习题。
select t1.deptno,
t1.dname,
t1.avgsal,
max(case
when t1.avgsal between t2.losal and t2.hisal then
t2.grade
end) grade
from (select a.deptno, b.dname, round(avg(a.sal), 2) avgsal
from emp a, dept b
where a.deptno = b.deptno
group by a.deptno, b.dname) t1,
salgrade t2
group by t1.deptno, t1.dname, t1.avgsal
order by t1.deptno;查询结果
追问有没有简单一点的,我刚学数据库,你写的有好多都看不懂。这是我们老师布置的习题。
全部回答
- 1楼网友:醉吻情书
- 2021-04-29 02:57
selectemp_bmid,emp_rygh,a.pjgzfromempleftjoin(selectemp_bmidasbm,avg(emp_gz)aspjgzfromempgroupbyemp_bmid)onemp_bmid=a.bmwhereemp_gz>a.pjgzemp_bmid:部门编号emp_rygh:人员工号emp_gz:工资
- 2楼网友:白昼之月
- 2021-04-29 02:39
selectdepartment,sum(casewhen员工种类=1then工资else0end)员工种类为1的工资总额,sum(casewhen员工种类=2then工资else0end)员工种类为2的工资总额from表groupbydepartment
我要举报
如以上回答内容为低俗、色情、不良、暴力、侵权、涉及违法等信息,可以点下面链接进行举报!
点此我要举报以上问答信息
大家都在看
推荐资讯