select
    t.user_id,
    cast(sum(t.point) as decimal(3,0)) as point
from

(select
user_id,
case-----准确理解“每满10分钟获得1积分”的含义
    when timestampdiff(minute,visit_time,leave_time)%10=0
        then timestampdiff(minute,visit_time,leave_time)/10
    else substr(round(timestampdiff(minute,visit_time,leave_time)/10,1),1,1)
    end as point
from visit_tb
group by user_id,visit_time,leave_time) t
group by t.user_id
order by point desc;