如何使用SQL计算Access数据库中的夜班

时间:2013-04-12 10:37:15

标签: sql ms-access

我有一个包含Inbounddatum1,Inbounddatum2,Timeinterval字段的表,我想根据移位计算间隔摘要,如下所示。由于夜班在晚上10点开始并在早上6点结束,我找不到在查询中显示它的正确方法。你能帮忙查询一下吗?提前谢谢。

Inbounddatum1          Inbounddatum2         Timeinterval 
----------             -------------          ---------         
26.02.2013 05:56:50    26.02.2013 05:57:02   00:00:12
26.02.2013 06:04:44    26.02.2013 06:05:36   00:00:52

Sql代码:

SELECT 
Int(Inbounddatum1) AS DATUM,
Format(SUM(IIf((DatePart('h',Inbounddatum2)>5 And DatePart('h',Inbounddatum2)<14),Timeinterval,0)),"hh:nn:ss") AS FRUHLEERZEIT, 
Format(SUM(IIf((DatePart('h',Inbounddatum2)>13 And DatePart('h',Inbounddatum2)<22),Timeinterval,0)),"hh:nn:ss") AS SPATLEERZEIT, 
Format(SUM(IIf((DatePart('h',Inbounddatum2)>24 And DatePart('h',Inbounddatum2)<6),Timeinterval,0)),"hh:nn:ss") AS NACHTLEERZEIT,
Format(Sum(Timeinterval),"hh:nn:ss") AS GESAMTLEERZEIT INTO LEERZEIT
FROM SUBINBINDOLEER
GROUP BY Int(Inbounddatum1);

结果:

 DATUM      FRUHLEERZEIT  SPATLEERZEIT   NACHTLEERZEIT  GESAMTLEERZEIT
 ---------  ------------  -----------   --------------  --------------
 26.02.2013 00:00:52                     00:00:12

0 个答案:

没有答案