回答

收藏

SQL嵌套聚合函数Max(Avg())

技术问答 技术问答 511 人阅读 | 0 人回复 | 2023-09-14

我正在用SQL编写此查询:$ t* E$ \- d3 A% m; P) Y) `1 R
select MAX(AVG(salary) ) from employees group by department_id;首先,我将分组department_id,但接下来会发生什么呢?
7 P) K4 P* l% l* d1 d% p3 d% F0 ^! [                                                                9 H: O; `# a; U; r  f! E
    解决方案:                                                                / n2 Q$ L- t9 z, S% L8 z1 ~
                                                                假如你有这样的事
3 l% u& H/ l( i3 ]. SEmployeeId DepartmentId Salary                                                             30 30         30                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                           分组后( b1 C0 [& b: f8 B' C
DepartmentId    AVG(Salary)         = 20              =             = 45因此,以下查询将返回45作为DepartmentId 3最高平均工资' |" R9 e$ a9 L: ~3 k/ H/ n
SELECT MAX(x.avg) FROM ( SELECT AVG(salary)as avg FROM employees group by department_id)x;
分享到:
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则