对于架构epartments(department_id, department_name) employees(last_name, department_id, salary)
我想要显示的department_id, department_name, count(employees),avg(salary),last_name,salary
我曾尝试使用下面的查询如何显示部门(一次)以及在该部门工作的所有员工的列表?
SELECT d1.department_id,d1.department_name,d1."count",d1."avg",e.last_name,e.salary
FROM employees e
INNER JOIN (SELECT d.department_id,d.department_name,count(e.last_name) AS "count",round(avg(e.salary),2) AS "avg"
FROM employees e,departments d
WHERE e.department_id=d.department_id
GROUP BY d.department_id,d.department_name) d1
ON e.department_id=d1.department_id;
虽然显示正确的输出它不是我想要的格式。 上面的查询给出的
90 Executive 3 19333.33 King 24000
90 Executive 3 19333.33 Kochhar 17000
90 Executive 3 19333.33 De Haan 17000
60 IT 3 6400 Hunold 9000
60 IT 3 6400 Ernst 6000
60 IT 3 6400 Lorentz 4200
50 Shipping 5 3500 Mourgos 5800
输出,而应该像
90 Executive 3 19333.33 King 24000
Kochhar 17000
De Haan 17000
60 IT 3 6400 Hunold 9000
Ernst 6000
Lorentz 4200
50 Shipping 5 3500 Mourgos 5800
而不是在SQL中这样做,这样做表示层代码的格式 – HaveNoDisplayName