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