If-then语句中的日期计算

时间:2017-01-30 15:59:38

标签: datetime ms-access date-arithmetic

我需要根据其中一个日期是否为空来计算两个日期字段之间的天数。如果日期变量为null,我需要合并今天的日期。请帮忙。 SAS用户尝试为Access 2010数据库中的其他用户设置查询。我正在寻找要在我的查询中插入的SQL语言。非常感谢!

离。

if dbo.nameoftable[date1] <> " " then time = [date1] - [date2]
elseif dbo.nameoftable[date1] = " " then time = ?todays date - [date2]endif;

谢谢!

1 个答案:

答案 0 :(得分:0)

你不需要if-then逻辑。只需使用Nz函数,即可在字段为空时指定要使用的值。

此外,您应该使用DateDiff而不是-来明确您正在使用的单位。

对于当前日期,请使用Date功能。请注意,这将返回正在执行查询的计算机的本地时区中的当前日期。

全部放在一起:

SELECT DateDiff('d', [date2], Nz([date1], Date())) AS [DifferenceInDays] FROM nameoftable;