android如何实现固定时间段内的工作时间求和

这篇文章主要介绍android如何实现固定时间段内的工作时间求和,文中介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们一定要看完!

网站建设哪家好,找成都创新互联!专注于网页设计、网站建设、微信开发、微信小程序、集团企业网站建设等服务项目。为回馈新老客户创新互联还提供了怒江州免费建站欢迎大家使用!

    最近碰到了两次这种情况,类似于使用打卡时间求一段时间内的工作时间之和,给出的表数据大致是这样的

android如何实现固定时间段内的工作时间求和

    ID:车间ID 

    gid:设备id

    ACTIVITY:类型 ,有两种:in  开启, out  关闭

    时间:启动或者关闭的时间点

    现在的要求是输入一个开始时间 和一个结束时间 求每台设备(同一车间的同一设备)的在此范围内的工作时间。

    异常数据处理:

    1.重复数据需要去重

    2.同一台设备连续的in 需要取最后一个 

    3.连续的out需要取第一个

    4.如果一个时间段的开始时间小于输入的开始时间,则按照输入开始时间计算

    5.如果一个时间段的结束时间大于输入的结束时间,则按照输入结束时间计算

    上面的表输入

android如何实现固定时间段内的工作时间求和

最终得到的结果是

android如何实现固定时间段内的工作时间求和

大家可以试试~

    数据在下方:

CREATE TABLE "SYSTEM"."AAREPORT" (  "ID" VARCHAR2(255 BYTE) ,  "ACTIVITY" VARCHAR2(255 BYTE) ,  "TXNTIMESTAMP" DATE ,  "GID" VARCHAR2(255 BYTE) )TABLESPACE "SYSTEM"LOGGINGNOCOMPRESSPCTFREE 10INITRANS 1STORAGE (  INITIAL 65536   NEXT 1048576   MINEXTENTS 1  MAXEXTENTS 2147483645  FREELISTS 1  FREELIST GROUPS 1  BUFFER_POOL DEFAULT)PARALLEL 1NOCACHEDISABLE ROW MOVEMENT;

-- ------------------------------ Records of AAREPORT-- ----------------------------INSERT INTO "SYSTEM"."AAREPORT" VALUES ('1', 'in', TO_DATE('2020-07-15 08:00:00', 'SYYYY-MM-DD HH24:MI:SS'), 'a');INSERT INTO "SYSTEM"."AAREPORT" VALUES ('1', 'out', TO_DATE('2020-07-16 03:00:00', 'SYYYY-MM-DD HH24:MI:SS'), 'a');INSERT INTO "SYSTEM"."AAREPORT" VALUES ('2', 'in', TO_DATE('2020-07-15 08:00:00', 'SYYYY-MM-DD HH24:MI:SS'), 'b');INSERT INTO "SYSTEM"."AAREPORT" VALUES ('3', 'in', TO_DATE('2020-07-15 10:00:00', 'SYYYY-MM-DD HH24:MI:SS'), 'a');INSERT INTO "SYSTEM"."AAREPORT" VALUES ('3', 'out', TO_DATE('2020-07-16 02:00:00', 'SYYYY-MM-DD HH24:MI:SS'), 'a');INSERT INTO "SYSTEM"."AAREPORT" VALUES ('3', 'in', TO_DATE('2020-07-16 10:00:00', 'SYYYY-MM-DD HH24:MI:SS'), 'a');INSERT INTO "SYSTEM"."AAREPORT" VALUES ('4', 'in', TO_DATE('2020-07-16 01:00:00', 'SYYYY-MM-DD HH24:MI:SS'), 'a');INSERT INTO "SYSTEM"."AAREPORT" VALUES ('4', 'out', TO_DATE('2020-07-16 02:00:00', 'SYYYY-MM-DD HH24:MI:SS'), 'a');INSERT INTO "SYSTEM"."AAREPORT" VALUES ('4', 'in', TO_DATE('2020-07-16 09:00:00', 'SYYYY-MM-DD HH24:MI:SS'), 'a');INSERT INTO "SYSTEM"."AAREPORT" VALUES ('4', 'out', TO_DATE('2020-07-17 21:00:00', 'SYYYY-MM-DD HH24:MI:SS'), 'a');INSERT INTO "SYSTEM"."AAREPORT" VALUES ('1', 'in', TO_DATE('2020-07-15 07:00:00', 'SYYYY-MM-DD HH24:MI:SS'), 'b');INSERT INTO "SYSTEM"."AAREPORT" VALUES ('1', 'out', TO_DATE('2020-07-16 04:00:00', 'SYYYY-MM-DD HH24:MI:SS'), 'b');INSERT INTO "SYSTEM"."AAREPORT" VALUES ('3', 'in', TO_DATE('2020-07-18 12:00:00', 'SYYYY-MM-DD HH24:MI:SS'), 'b');INSERT INTO "SYSTEM"."AAREPORT" VALUES ('3', 'in', TO_DATE('2020-07-17 08:00:00', 'SYYYY-MM-DD HH24:MI:SS'), 'b');INSERT INTO "SYSTEM"."AAREPORT" VALUES ('3', 'out', TO_DATE('2020-07-17 18:00:00', 'SYYYY-MM-DD HH24:MI:SS'), 'b');

以上是“android如何实现固定时间段内的工作时间求和”这篇文章的所有内容,感谢各位的阅读!希望分享的内容对大家有帮助,更多相关知识,欢迎关注创新互联行业资讯频道!


本文标题:android如何实现固定时间段内的工作时间求和
文章位置:http://pwwzsj.com/article/phojpi.html