代码拉取完成,页面将自动刷新
# $1555. 银行账户概要
# https://leetcode-cn.com/problems/bank-account-summary/
# SQL架构
Create table If Not Exists Users (user_id int, user_name varchar(20), credit int);
Create table If Not Exists Transactions (trans_id int, paid_by int, paid_to int, amount int, transacted_on date);
Truncate table Users;
insert into Users (user_id, user_name, credit) values ('1', 'Moustafa', '100');
insert into Users (user_id, user_name, credit) values ('2', 'Jonathan', '200');
insert into Users (user_id, user_name, credit) values ('3', 'Winston', '10000');
insert into Users (user_id, user_name, credit) values ('4', 'Luis', '800');
Truncate table Transactions;
insert into Transactions (trans_id, paid_by, paid_to, amount, transacted_on) values ('1', '1', '3', '400', '2020-08-01');
insert into Transactions (trans_id, paid_by, paid_to, amount, transacted_on) values ('2', '3', '2', '500', '2020-08-02');
insert into Transactions (trans_id, paid_by, paid_to, amount, transacted_on) values ('3', '2', '1', '200', '2020-08-03');
# Write your MySQL query statement below
select
u.user_id,
u.user_name,
u.credit + ifnull(
sum(if(t.paid_by = u.user_id, -1, 1) * t.amount),
0
) as credit,
if(
u.credit + ifnull(
sum(if(t.paid_by = u.user_id, -1, 1) * t.amount),
0
) < 0,
'Yes',
'No'
) as credit_limit_breached
from
Users u
left join Transactions t on t.paid_by = u.user_id
or t.paid_to = u.user_id
group by
u.user_id,
u.user_name,
u.credit;
# clean-up
drop table Users;
drop table Transactions;
此处可能存在不合适展示的内容,页面不予展示。您可通过相关编辑功能自查并修改。
如您确认内容无涉及 不当用语 / 纯广告导流 / 暴力 / 低俗色情 / 侵权 / 盗版 / 虚假 / 无价值内容或违法国家有关法律法规的内容,可点击提交进行申诉,我们将尽快为您处理。