我创建了表Employee
和Department
。 Employee
表包含员工详细信息,其中包含薪水和部门ID作为外键。
我想以平均升序排列显示列表部门和平均工资。
department
表包含deptid和deptnm。
DEPTID(pk) DEPTNM DHEAD
------------------------
1 COMPUTER PATIL SIR
2 MARATHI PAWAR SIR
3 MICRO JADHAV SIR
4 BIOTECH BHOSALE SIR
5 BOTANY JADHAV SIR
EMPID(pk) LASTNAME FIRSTNAME MIDDLENAME DOB DOJ SALARY EMPDEPTID
----------------------------------------------------------------------------
1 PAWAR SIDDHANT SANGHA 29-APR-97 02-JUL-15 10000 1
2 ADKE SHUBHAM GIRISH 02-AUG-96 03-AUG-15 9000 2
3 CHOUGULE NEERAJ SUBHASH 01-MAR-94 05-DEC-15 7000 3
4 MOTE AJAY SHAHAJI 05-JUN-96 10-NOV-15 4500 4
5 SAHASTRA ASHWIN MADAN 21-NOV-96 21-NOV-15 9000 5
答案 0 :(得分:0)
然后,你需要按部门分组并计算平均工资,按它排序。如果Department.DEPTNM
不唯一,我们会按DEPTID
分组:
SELECT Employee.EMPDEPTID, AVG(Employee.SALARY) as AVERAGE_SALARY
FROM Employee
GROUP BY Department.DEPTID
ORDER BY AVG(Employee.SALARY)
如果您需要获取部门名称,则可以在以下后加入Department
:
SELECT * FROM (
SELECT Employee.EMPDEPTID, AVG(Employee.SALARY) as AVERAGE_SALARY
FROM Employee
GROUP BY Department.DEPTID
ORDER BY AVG(Employee.SALARY)
) as AVG_SALARY_PER_DEPT
JOIN Department ON (Department.DEPTID = AVG_SALARY_PER_DEPT.EMPLDEPTID)
答案 1 :(得分:0)