几天前,我从零开始学习PL / SQL(没有SQL背景),现在我正尝试使用汇总函数,并试图获得每个员工的平均工资。
表如下所示:
表1:
我想看看:
表2:
此刻,我正在做这样的事情:
SELECT
employee, AVG(salary)
FROM
employees
GROUP BY employee, salary
但是给出的结果与表1相同。
换句话说,我想学习如何将许多行合并或聚合为一个行。基本上,计算每个雇员的平均工资,并仅与该雇员及其相应的AVG(SALARY)显示一行。
这是不可能的还是我只是做错了什么?
谢谢。
答案 0 :(得分:3)
尝试一下:只需从分组依据中删除薪水列
SELECT employee, AVG(salary) FROM employees
GROUP BY employee
答案 1 :(得分:1)
这对我来说很尴尬,但如果有人遇到与我相同的问题,我不会删除该问题。
错误在group by
中,我应该只按employee
分组。
由于某种原因,我认为我必须按SELECT
中出现的每一列进行分组。
因此,查询应为:
SELECT
employee, AVG(salary)
FROM
employees
GROUP BY
employee -- ERROR WAS HERE, leave just employee. -.-
很抱歉没有注意到以前的菜鸟错误。