0
我有兩個數據表員工和部門。我想顯示每個部門的員工數量,每個部門的平均工資等等。我的代碼是:Incoorect計數結果
select d.department_id, d.department_name, count(e.last_name) Employees,
avg(e.salary) Avg_Salary, e.last_name, e.salary, e.job_id
from departments d, employees e
where d.department_id = e.department_id
group by d.department_id, d.department_name, e.last_name, e.salary, e.job_id
order by d.department_id;
此代碼運行良好,但員工數和平均工資的結果並不是我正在尋找的。我的結果是:
Department_ID Department_Name Employees Avg_Salary Last_Name Salary Job_ID
------------- --------------- --------- ---------- --------- ------ ------
10 Administration 1 4400 Whalen 4400 AD_ASST
20 Marketing 1 6000 Fay 6000 MK_REP
20 Marketing 1 13000 Hartstein 13000 MK_MAN
正如您所看到的,員工數顯示1爲每個員工,而不是每個部門的總數;並且Avg_Salary與薪水相同,而不是每個部門的實際工資平均值。
這是結果我想:
Department_ID Department_Name Employees Avg_Salary Last_Name Salary Job_ID
------------- --------------- --------- ---------- -------- ------ ------
10 Administration 1 4400 Whalen 4400 AD_ASST
20 Marketing 2 9500 Fay 6000 MK_REP
20 Marketing 2 9500 Smith 13000 MK_MAN
我該如何解決這個問題?
謝謝託尼!這工作! – Tim