select uid, dt2 as month , sum(core)from ( select uid,date_format(dt,'%Y%m') dt2,subnumrank,if(subnumrank % 7 = 3 , 3, if(subnumrank % 7 = 0, 7,1)) as core from ( select uid,dt,date_sub(dt,interval ranknum DAY) as dt2,dense_rank()over(partition by uid,date_sub(dt,interval ranknum DAY) order by dt) a...