with a as(
    select staff_id,round(timestampdiff(minute,first_clockin,last_clockin)/60,1) as time
    from attendent_tb)
select department,concat(round((sum(case when time>9.5 then 1 else 0 end)/count(*))*100,1),'%') as ratio
from staff_tb s join a on s.staff_id=a.staff_id
group by department order by ratio desc