​LeetCode刷题实战615:平均工资:部门与公司比较

算法的重要性,我就不多说了吧,想去大厂,就必须要经过基础知识和业务逻辑面试+算法面试。所以,为了提高大家的算法能力,这个公众号后续每天带大家做一道算法题,题目就从LeetCode上面选 !

今天和大家聊的问题叫做 平均工资:部门与公司比较,我们先来看题面:

https://leetcode.cn/problems/average-salary-departments-vs-company/

f6adfe3be39fff8f3648233515510965.png

解题

先求出每个部门每个月的平均工资

再求公司每个月的平均工资

连表查,case when 比较

select t1.pay_month, t1.department_id, 
case when t1.am > t2.am then 'higher' when t1.am < t2.am then 'lower' else 'same' end comparison
from
(
 select DATE_FORMAT(pay_date,'%Y-%m') pay_month, department_id , avg(amount) am
 from salary s, employee e
 where s.employee_id = e.employee_id 
 GROUP BY pay_month, department_id
) t1,
(
 select DATE_FORMAT(pay_date,'%Y-%m') pay_month, avg(amount) am from salary GROUP BY pay_month
) t2
where t1.pay_month = t2.pay_month

上期推文:

LeetCode1-600题汇总,希望对你有点帮助!

LeetCode刷题实战601:体育馆的人流量

LeetCode刷题实战602:好友申请 II :谁有最多的好友

LeetCode刷题实战603:连续空余座位

LeetCode刷题实战604:迭代压缩字符串

LeetCode刷题实战605:种花问题

LeetCode刷题实战606:根据二叉树创建字符串

LeetCode刷题实战607:销售员

LeetCode刷题实战608:树节点

LeetCode刷题实战609:在系统中查找重复文件

LeetCode刷题实战610:判断三角形

LeetCode刷题实战611:有效三角形的个数

LeetCode刷题实战612:平面上的最近距离

LeetCode刷题实战613:直线上的最近距离

LeetCode刷题实战614:二级关注者

fc183465fa05b2162ef06576fdf3a9ca.png

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

编程IT圈

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值