[尝试使用事件日期(包括时间)和以前的日期(包括时间)来查找每个工人在分拣表上花费的时间事件日期是工作人员的结束日期,而上一个日期是开始日期。我在某些回报中得到负数
这是查询:
SELECT OEL_UID, NVL(PREVDT, EVENT_TIME) PREVDT, EVENT_TIME, TO_CHAR(ROUND((EVENT_TIME - NVL(PREVDT, EVENT_TIME))*(24),4)) HRSSPENT FROM (SELECT OEL_UID, EVENT_TIME, LAG(EVENT_TIME) OVER (PARTITION BY OEL_UID ORDER BY PICKSTATE, EVENT_TIME) AS PREVDT, PICKSTATE, ORDERID FROM DAIDATA.MI_PICK WHERE OEL_CLASS = 'OEL_PICK_SORTED'
这是“花费的小时数”列的返回值>
下面的OP评论
:[例如,当上一个日期为"22-aug-2017 21:23:06"
且事件日期为"23-aug-2017 00:10:23"
时,我得到否定的结果,然后结果显示为-21 ....,因为第二天的时间位数较小。如果活动当天的时间比前一天高,我将获得积极的结果。
[使用事件日期(包括时间)和以前的日期(包括时间)来查找每个工作人员在分拣表上花费的小时数,事件日期是工作人员的结束日期,而以前的日期是开始时间...