题解 | 统计加班员工占比

统计加班员工占比

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

SELECT
    b.department,
    CONCAT(
        ROUND(
            AVG(
                CASE WHEN TIMESTAMPDIFF(SECOND,a.first_clockin,a.last_clockin)/3600 > 9.5       -- 计算加班时间是否大于9.5h
                THEN 1 ELSE 0 END) * 100.0      -- 大于9.5则记录加班+1,否则就是加班+0,*100则是为了转化为百分比格式
        ,1)
    ,'%') AS ratio
FROM attendent_tb AS a
INNER JOIN staff_tb AS b
    ON (a.staff_id = b.staff_id)
GROUP BY b.department
ORDER BY ratio DESC;

全部评论

相关推荐

评论
点赞
收藏
分享

创作者周榜

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