select 
    round(avg(t.score), 3) as avg_score
from(
    select *,
    row_number() over(partition by r.rec_user order by u.score) as ranking
    from recommend_tb as r 
        join user_action_tb as u on r.rec_user = u.user_id
    where r.rec_info_l = u.hobby_l
) as t
where t.ranking = 1

#采用窗口函数去除重复推荐,也看到使用flag计数,但我感觉窗口函数好一点,不知道哪个运行效果好,底层逻辑没学的坏处,好处是快