题解 | 统计加班员工占比

统计加班员工占比

https://www.nowcoder.com/practice/6c0a521c36e14c7599eaef858f6f8233

select
    staff_tb.department,
    concat(
        round(
            (count(t1.department) / count(staff_tb.department)) * 100,
            1
        ),
        '%'
    ) as ratio
from
    (
        select
            staff_tb.staff_id,
            staff_name,
            department,
            round(
                timestampdiff(minute, first_clockin, last_clockin) / 60,
                1
            ) as worktime
        from
            staff_tb
            join attendent_tb a on staff_tb.staff_id = a.staff_id
        where
            round(
                timestampdiff(minute, first_clockin, last_clockin) / 60,
                1
            ) > 9.5
    ) as t1
    right join staff_tb on t1.staff_id = staff_tb.staff_id
group by
    staff_tb.department
order by
    ratio desc

全部评论

相关推荐

评论
点赞
收藏
分享

创作者周榜

更多
牛客网
牛客网在线编程
牛客网题解
牛客企业服务