select post, avg(timestampdiff(minute,first_clockin,last_clockin)/60) as work_hours from staff_tb a right join attendent_tb b on a.staff_id=b.staff_id where first_clockin is not null and last_clockin is not null group by post order by work_hours desc