首月客户金额

时间:2020-09-08 15:50:05

标签: sql range teradata monthcalendar

Teradta-SQL 我只需要向第一个月的客户显示(new_col)所有月份的金额

拥有:

date        cust sum
2020-04-01  1    100
2020-04-01  2    100
2020-05-01  1    100
2020-05-01  3    100
2020-06-01  4    100
2020-06-01  2    100

需要:

date        cust sum  new_col
2020-04-01  1    100  100
2020-04-01  2    110  110
2020-05-01  1    120  120
2020-05-01  3    100  null
2020-06-01  4    100  null
2020-06-01  2    140  140

1 个答案:

答案 0 :(得分:0)

似乎您需要一个 Group Min

假设日期始终是每月的1号:

case
  when min(date) over (partition by cust) -- min date for customer
     = min(date) over ()                  -- min date overall
  then sum
end