显示最高和最低值Sqlplus
问题描述:
我是SqlPlus的新手,我试图显示所有部门中最高和最低的平均工资。到目前为止,我只能显示最高的薪水,但我似乎无法显示最低的薪水。显示最高和最低值Sqlplus
这是我走到这一步,
SELECT deptno AS "Dept. No", MAX(sal) AS "Salary"
FROM emp e
WHERE e.sal > (SELECT avg(sal) FROM emp)
GROUP BY deptno;
我得到的输出是
Dept. No Salary
30 2850
20 3000
10 5000
我试图让
Dept. No Salary
30 2850
30 950
20 3000
20 800
10 5000
10 1300
哦,我现在用的是部门和emp表格样本!
答
如果有其他人有同样的问题,此查询适用于我! :)
SELECT deptno AS "Dept. No", MAX(sal) AS "Highest Salary", MIN(sal) AS "Lowest Salary"
FROM emp
GROUP BY deptno;
+0
哈哈,“同样的问题”会被弄糊涂:-)任务很简单:你需要每个部门的最低和最高工资。这几乎可以将单词逐个转换为SQL。这个“问题”是,你认为你正在寻找一些平均工资,而这与实际工作无关。 –
您是指所有部门的最高和最低平均工资是什么意思?计算每个部门的平均值(每个部门有一个平均值),然后从所有这些平均值(每个部门一个平均值)中只显示最高和最低值? – mathguy
在任何情况下:你写的查询都有一个'where'子句,两个条件通过'和'连接,两个条件直接相互矛盾;所以很明显,不管其他什么都会选择零行。 – mathguy
@mathguy我的意思是显示高和低。例如;假设最高价格是50美元,最低价格是20美元,我想要显示这两个值。到目前为止,我只能显示50美元的价值。我编辑了我的问题以显示我的预期输出! – Catastrophe