某公司员工信息数据及单日出勤信息数据如下: 员工信息表staff_tb(staff_id-员工id,staff_name-员工姓名,staff_gender-员工性别,post-员工岗位类别,department-员工所在部门 ),如下所示: 出勤信息表attendent_tb( info_id-信息id,staff_id-员工id,first_clockin-上班打卡时间,last_clockin-下班打卡时间 ),如下所示: 问题:请统计该公司各岗位员工平均工作时长? 注:如员工未打卡该字段数据会存储为NULL,那么不计入在内; 要求输出:员工岗位类别、平均工作时长(以小时为单位输出并保留三位小数),按照平均工作时长降序排序; 示例数据结果如下: 解释:Engineer类岗位有4、5、6共计3名员工,工作时长分别为:9.500、9.167、10.250,则平均工作时长为 (9.500+9.167+10.250 )/3=9.639小时 其他结果同理…..

区块链毕设网qklbishe.com为您提供问题的解答

某公司员工信息数据及单日出勤信息数据如下:
员工信息表staff_tb(staff_id-员工id,staff_name-员工姓名,staff_gender-员工性别,post-员工岗位类别,department-员工所在部门),如下所示:

某公司员工信息数据及单日出勤信息数据如下:    员工信息表staff_tb(staff_id-员工id,staff_name-员工姓名,staff_gender-员工性别,post-员工岗位类别,department-员工所在部门 ),如下所示:                              出勤信息表attendent_tb( info_id-信息id,staff_id-员工id,first_clockin-上班打卡时间,last_clockin-下班打卡时间 ),如下所示:                问题:请统计该公司各岗位员工平均工作时长?    注:如员工未打卡该字段数据会存储为NULL,那么不计入在内;    要求输出:员工岗位类别、平均工作时长(以小时为单位输出并保留三位小数),按照平均工作时长降序排序;     示例数据结果如下:                              解释:Engineer类岗位有4、5、6共计3名员工,工作时长分别为:9.500、9.167、10.250,则平均工作时长为 (9.500+9.167+10.250 )/3=9.639小时    其他结果同理.....
出勤信息表attendent_tb(info_id-信息id,staff_id-员工id,first_clockin-上班打卡时间,last_clockin-下班打卡时间),如下所示:
某公司员工信息数据及单日出勤信息数据如下:    员工信息表staff_tb(staff_id-员工id,staff_name-员工姓名,staff_gender-员工性别,post-员工岗位类别,department-员工所在部门 ),如下所示:                              出勤信息表attendent_tb( info_id-信息id,staff_id-员工id,first_clockin-上班打卡时间,last_clockin-下班打卡时间 ),如下所示:                问题:请统计该公司各岗位员工平均工作时长?    注:如员工未打卡该字段数据会存储为NULL,那么不计入在内;    要求输出:员工岗位类别、平均工作时长(以小时为单位输出并保留三位小数),按照平均工作时长降序排序;     示例数据结果如下:                              解释:Engineer类岗位有4、5、6共计3名员工,工作时长分别为:9.500、9.167、10.250,则平均工作时长为 (9.500+9.167+10.250 )/3=9.639小时    其他结果同理.....

问题:请统计该公司各岗位员工平均工作时长?
注:如员工未打卡该字段数据会存储为NULL,那么不计入在内;
要求输出:员工岗位类别、平均工作时长(以小时为单位输出并保留三位小数),按照平均工作时长降序排序;
示例数据结果如下:

某公司员工信息数据及单日出勤信息数据如下:    员工信息表staff_tb(staff_id-员工id,staff_name-员工姓名,staff_gender-员工性别,post-员工岗位类别,department-员工所在部门 ),如下所示:                              出勤信息表attendent_tb( info_id-信息id,staff_id-员工id,first_clockin-上班打卡时间,last_clockin-下班打卡时间 ),如下所示:                问题:请统计该公司各岗位员工平均工作时长?    注:如员工未打卡该字段数据会存储为NULL,那么不计入在内;    要求输出:员工岗位类别、平均工作时长(以小时为单位输出并保留三位小数),按照平均工作时长降序排序;     示例数据结果如下:                              解释:Engineer类岗位有4、5、6共计3名员工,工作时长分别为:9.500、9.167、10.250,则平均工作时长为 (9.500+9.167+10.250 )/3=9.639小时    其他结果同理.....
解释:Engineer类岗位有4、5、6共计3名员工,工作时长分别为:9.500、9.167、10.250,则平均工作时长为 (9.500+9.167+10.250)/3=9.639小时
其他结果同理…..

— step1: 查询每天工作时间 因为是每天的打卡表且为了便捷暂且不对日期做筛选、只对时间做差
with t1 as (
select staff_id
        , timediff(last_clockin, first_clockin) as tm1
from attendent_tb)
— step2:将时分秒的工作时长转化为小时的工作时长并连接员工表获取部门
, t2 as (
select t1.staff_id
        , post
        , hour(tm1) + minute(tm1) / 60 + second(tm1) / 3600 as work_hour
from t1
join staff_tb s on t1.staff_id = s.staff_id)
— step3:分组聚合、统计部门员工的平均工作时长
select post
        , avg(work_hour) as work_hours
from t2
group by post
order by work_hours desc

01:17

以上就是关于问题某公司员工信息数据及单日出勤信息数据如下: 员工信息表staff_tb(staff_id-员工id,staff_name-员工姓名,staff_gender-员工性别,post-员工岗位类别,department-员工所在部门 ),如下所示:
出勤信息表attendent_tb( info_id-信息id,staff_id-员工id,first_clockin-上班打卡时间,last_clockin-下班打卡时间 ),如下所示:

问题:请统计该公司各岗位员工平均工作时长? 注:如员工未打卡该字段数据会存储为NULL,那么不计入在内; 要求输出:员工岗位类别、平均工作时长(以小时为单位输出并保留三位小数),按照平均工作时长降序排序;
示例数据结果如下: 解释:Engineer类岗位有4、5、6共计3名员工,工作时长分别为:9.500、9.167、10.250,则平均工作时长为 (9.500+9.167+10.250 )/3=9.639小时 其他结果同理…..的答案

欢迎关注区块链毕设网-
web3一级市场套利打新赚钱空投教程

区块链NFT链游项目方科学家脚本开发培训

从业7年-专注一级市场


微信:btc9767
TELEGRAM :https://t.me/btcok9

具体资料介绍

web3的一级市场千万收益的逻辑


进群点我



qklbishe.com区块链毕设代做网专注|以太坊fabric-计算机|java|毕业设计|代做平台-javagopython毕设 » 某公司员工信息数据及单日出勤信息数据如下: 员工信息表staff_tb(staff_id-员工id,staff_name-员工姓名,staff_gender-员工性别,post-员工岗位类别,department-员工所在部门 ),如下所示: 出勤信息表attendent_tb( info_id-信息id,staff_id-员工id,first_clockin-上班打卡时间,last_clockin-下班打卡时间 ),如下所示: 问题:请统计该公司各岗位员工平均工作时长? 注:如员工未打卡该字段数据会存储为NULL,那么不计入在内; 要求输出:员工岗位类别、平均工作时长(以小时为单位输出并保留三位小数),按照平均工作时长降序排序; 示例数据结果如下: 解释:Engineer类岗位有4、5、6共计3名员工,工作时长分别为:9.500、9.167、10.250,则平均工作时长为 (9.500+9.167+10.250 )/3=9.639小时 其他结果同理…..