select
dt
,round(sum(viiew_len_sec) / count(distinct uid), 1) avg_viiew_len_sec
from(
    select
    uid
    ,left(in_time, 10) dt
    ,sum(timestampdiff(second, in_time, out_time)) viiew_len_sec
    from tb_user_log log
    where left(in_time, 7) = '2021-11' 
    and artical_id != 0 and artical_id !='0'
    group by uid, dt
) a
group by dt
order by avg_viiew_len_sec