力扣SQL刷题15

题目1:
编写一个SQL查询以计算每位员工每天在办公室花费的总时间(以分钟为单位)。 请注意,在一天之内,同一员工是可以多次进入和离开办公室的。
在这里插入图片描述
解题思路:
这是一个分组求和的问题
代码实现:

select event_day as day,emp_id,sum(out_time-in_time) as total_time
from employees
group by event_day,emp_id;

结果:
在这里插入图片描述

题目2:
写一个 SQL, 报告余额高于 10000 的所有用户的名字和余额. 账户的余额等于包含该账户的所有交易的总和。
在这里插入图片描述
解题思路:
这是一个连接,分组求和,用having进行筛选的问题
代码实现:

select u.name ,sum(t.amount) as balance    
from Users u
left join Transactions t
on u.account=t.account    
group by u.account   
having balance>10000 ;

结果:
在这里插入图片描述

猜你喜欢

转载自blog.csdn.net/Txixi/article/details/115862337