ソースコード
with MRR1 as(
select 
strftime('%Y-%m-%d' ,mr1.MONTHLY) as "YM",
sum(ifnull(mr2.NEW_MRR,0) + ifnull(mr2.EXPANSION_MRR,0) - ifnull(mr2.DOWNGRADE_MRR,0) - ifnull(mr2.CHURN_MRR,0)) over(order by mr1.MONTHLY) as MRR
from MRR_DATA as mr1
left join MRR_DATA as mr2 on datetime(mr2.MONTHLY, '+1 months') = datetime(mr1.MONTHLY)
order by mr1.MONTHLY
)
select * from MRR1
union all
select strftime('%Y-%m-%d' ,datetime(YM, '+1 months')),
MRR + ifnull(NEW_MRR,0) + ifnull(EXPANSION_MRR,0) - ifnull(DOWNGRADE_MRR,0) - ifnull(CHURN_MRR,0) 
from MRR1
inner join MRR_DATA on MRR1.YM = MRR_DATA.MONTHLY
where YM = (select max(YM) from MRR1)
order by MRR1.YM
提出情報
提出日時2023/08/21 09:55:57
コンテスト第5回 SQLコンテスト
問題MRRの集計
受験者ryo_tokyo
状態 (詳細)AC
(Accepted: 正答)
メモリ使用量93 MB
メッセージ
テストケース(通過数/総数)
3/3
状態
メモリ使用量
データパターン1
AC
91 MB
データパターン2
AC
90 MB
データパターン3
AC
93 MB