with t1 as(
select answer_date,
author_id,
dense_rank() over(partition by author_id order by answer_date) rn
from answer_tb
)
select author_id,author_level,max(days) days_cnt
from(
select author_id,count(distinct answer_date) days
from t1
group by author_id,date_sub(answer_date,interval rn day)
)t2 left join author_tb using(author_id)
group by author_id,author_level
having days_cnt >= 3



京公网安备 11010502036488号