with t1 as (
select a.video_id, date_format(a.start_time,'%Y-%m-%d') start_time, a.if_like, a.if_retweet, b.tag
from tb_user_video_log a join tb_video_info b on a.video_id = b.video_id
-- where date_format(a.start_time,'%Y-%m-%d') between date('2021-09-25') and date('2021-10-03')
), t2 as (
select distinct tag, start_time, sum(if_like) over(partition by tag,start_time) if_like,
sum(if_retweet) over(partition by tag,start_time) if_retweet
from t1
), t3 as (
select tag, start_time,
sum(if_like) over(partition by tag order by start_time rows between 6 preceding and current row) sum_like_cnt_7d,
max(if_retweet) over(partition by tag order by start_time rows between 6 preceding and current row) max_retweet_cnt_7d
from t2
), t4 as (
select tag, start_time, sum_like_cnt_7d, max_retweet_cnt_7d
from t3
where start_time between date('2021-10-01') and date('2021-10-03')
order by tag desc, start_time
)
select * from t4