select uid, date_format(dt, '%Y%m') month, sum(coin) coin from( select uid, dt, tep, case when row_rank%7 = 3 then 3 when row_rank%7 = 0 then 7 else 1 end as coin from( select uid, dt, tep, row_number() over(partition by uid, tep order by dt) row_rank from( select uid, dt, date_sub(dt,interval rn da...