已关闭。此问题需要超过focused。当前不接受答案。
**想要改进此问题吗?**更新此问题,使其仅关注editing this post的一个问题。
6天前关闭。
Improve this question
帐户余额从0开始。正金额是存款或信用交易。存款不收费。
每个负金额是影响所收取的月费的信用卡收费或借记交易。
每月费用基于活动分级。-如果少于3个借记交易或者它们的总和小于100,则费用为5。-如果有3到5个借记交易并且它们的总和大于100,则费用为3。-如果有6个或更多借记交易并且它们的总和〉= 100,则不收费。
CREATE TABLE transactions (
`dt` date,
`amount` FLOAT
);
INSERT INTO transactions
(`dt`, `amount`)
VALUES
('2020-01-12 ', '-18.32'),
('2020-01-23 ', '-15.96'),
('2020-01-23 ', '-83.72'),
('2020-02-13 ', '45.4'),
('2020-02-26', '-3.53'),
('2020-04-13', '-62.17'),
('2020-06-02', '-21.92'),
('2020-06-04', '-57.19'),
('2020-06-06', '-89.54'),
('2020-06-11', '-22.1'),
('2020-06-17', '-77.13'),
('2020-06-17', '-27.73'),
('2020-09-20 ', '-78.57'),
('2020-09-18 ', '-33.65'),
('2020-09-27 ', '-1.44'),
('2020-10-18 ', '48.75'),
('2020-11-21 ', '-92.77'),
('2020-12-18 ', '-89.15'),
('2020-12-19 ', '-45.68'),
('2020-12-27 ', '-61.99');
SQL代码
2条答案
按热度按时间bihw5rsg1#
类似下面的代码应该可以工作:
这项工作分2步进行:
1.创建按月分组的第一个SELECT。注意以下事项:
使用CASE选择正确的月费。使用绝对值的总和,不确定这是否是你所需要的。
1.将费用总额与金额总额相加
ldfqzlk82#
**假设:**这是根据提供的业务规则计算2020年的年度余额
步骤1.以
cte_year_2020
生成2020年月份(01~12)列表步骤2.计算每月的借方交易笔数和借方交易总金额(如果当月没有借方交易则置0)
步骤3.应用业务规则计算月费
第四步:总结
在汇总之前,
cte_monthly_txn_fee
中的数据如下:总结后:
不确定为什么预期输出为906.56?缺少什么?