让DateDiff显示小数

时间:2015-08-21 13:17:23

标签: ms-access datediff

我正在使用DateDiff函数,但我希望它能给我3个小数位。如何改变我的查询以达到这样的结果? - 我需要通过查询本身而不是VBA函数来完成。

Date123: DateDiff('d', [startdate], [enddate])

1 个答案:

答案 0 :(得分:1)

对于您可以放入查询的行,我会使用以下内容。

Format(DateDiff("s",[DateOne],[DateTwo])/60/60/24,"#.###")

更好的做法是在db中的模块中创建一个函数,如下所示。然后通过查询调用它。代码更易于维护,可测试且易于理解。

Public Function DateDiffInFractions(DateOne As Date, DateTwo As Date) As Double

Dim SecondsDiff As Double
SecondsDiff = DateDiff("S", DateOne, DateTwo) / 60 / 60 / 24     ' Calculate Number of days different.
DateDiffInFractions = Format(SecondsDiff, "##.###")              ' Format to 3 Decimal points and return

End Function