SQL 刷题/【携程】统计各部门平均实发薪资
上一题下一题中等通过率 0%

【携程】统计各部门平均实发薪资

WHERE 条件JOIN 连接聚合函数GROUP BYORDER BY标签画像面试真题

题目描述

来源:携程 SQL 面试真题

某公司需要结合员工信息和薪资信息,统计各部门符合薪资范围要求的员工平均实发薪资。

数据表

staff_tb 员工信息表

字段类型说明
staff_idBIGINT员工 ID
staff_nameVARCHAR员工姓名
staff_genderVARCHAR员工性别
postVARCHAR员工岗位类别
departmentVARCHAR员工所在部门

salary_tb 员工薪资信息表

字段类型说明
salary_idBIGINT薪资信息 ID
staff_idBIGINT员工 ID
normal_salaryDECIMAL标准薪资
dock_salaryDECIMAL扣除薪资

题目要求

  • 实发薪资 = 标准薪资 - 扣除薪资。
  • 剔除实发薪资小于 4000 或大于 30000 的员工,即只保留实发薪资在 4000 至 30000 之间(含边界)的员工。
  • 按部门统计平均实发薪资,四舍五入保留 3 位小数。
  • 按平均实发薪资降序排列;平均实发薪资相同时按部门升序排列。

期望输出列

列名说明
department员工所在部门
avg_salary部门平均实发薪资

数据样例

当前运行环境
staff_idPKBIGINTstaff_nameVARCHAR(50)staff_genderVARCHAR(10)postVARCHAR(50)departmentVARCHAR(50)
1AngusmaleFinancialdep1
2CathyfemaleDirectordep1
3AldisfemaleDirectordep2
4LawsonmaleEngineerdep1
5CarlmaleEngineerdep2
6BenmaleEngineerdep1
7RosefemaleFinancialdep2
输入数据显示 7 / 7
SQL 编辑器正在保存草稿...
正在加载 SQL 编辑器...

运行你的 SQL 查询后,结果将显示在这里