select sf.department, round(avg(sy.normal_salary - sy.dock_salary), 2) as average_actual_salary, ifnull(round(avg(if(sf.staff_gender='male',sy.normal_salary - sy.dock_salary,null)),2),0.00) as average_actual_salary_male, ifnull(round(avg(if(sf.staff_gender='female',sy.normal_salary - sy.dock_salary,null)),2),0.00) as average_actual_salary_female from staff_tb sf join salary_tb sy on sf.staff_id = sy.staff_id group by department order by average_actual_salary desc
| 只对男性员工计算 (即不参与平均值计算) |
| 计算上述结果的平均值(只会对非 NULL 项生效) |
| 保留两位小数 |
| 如果结果为 |