select
        department,
        concat(round(count(a.staff_id) / count(stb.staff_id) * 100,1),'%') as ratio
from 
        staff_tb as stb
left join (
    select 
        *
    from 
            attendent_tb
    where 
            timestampdiff(second,first_clockin,last_clockin) / 3600 > 9.5
)a
on 
        stb.staff_id = a.staff_id
group by
        stb.department
order by
        ratio desc