如何在 Access 表中减去两次?
查询必须自动完成。我需要在到达时减去剩余时间,这样我才能得到工作时间:
查询必须填写表中的小时列,所以我可以在 c# 程序中获取它。
[左]- [到达]
如何在 Access 表中减去两次?
查询必须自动完成。我需要在到达时减去剩余时间,这样我才能得到工作时间:
查询必须填写表中的小时列,所以我可以在 c# 程序中获取它。
[左]- [到达]
在访问中,如果字段是日期/时间类型,则只需减去它们并根据需要格式化输出即可。减法的结果是天数和天数的分数。如果你想以小时为单位,只需乘以 24,即得到小时数和小时数的分数
SELECT cdbl([Left] - [Arrived]) * 24 as worked_hours FROM yourtable
日期差异
DateDiff ( 间隔, date1, date2, [firstdayofweek], [firstweekofyear])
http://www.techonthenet.com/access/functions/date/datediff.php
DateDiff ("h", [Arrived], [Left])
正如罗素所说,使用DateDiff
函数。我在测试 MsAccess DB 上进行了测试,它可以工作。这是我的选择声明:
SELECT DateDiff('n',[Arrived],[Left])/60 AS Worked,
DateDiff('s',[Arrived],[Left])/3600 AS Worked2,
*
FROM Table1;
样本结果:
Worked Worked2 Left Arrived
1 0.999722222222222 4/9/2013 3:00:00 PM 4/9/2013 2:00:01 PM
0.833333333333333 0.833055555555556 4/9/2013 3:00:00 PM 4/9/2013 2:10:01 PM
1.66666666666667E-02 2.77777777777778E-04 4/9/2013 3:00:00 PM 4/9/2013 2:59:59 PM
24 23.9997222222222 4/9/2013 3:00:00 PM 4/8/2013 3:00:01 PM
如您所见,Worked2 方法(按秒)更准确一些。