SQL 问题:计算的查询列无法识别 DateDiff 中的日期间隔?

问题描述 投票:0回答:1

由于某种原因,我无法让计算的查询列识别日期间隔。每次我测试运行显示查询结果的表单时,都会弹出一个参数要求我输入 d 的值。

这是我的 SQL 列公式:

ExceedsTime: (IIf(IsNull([CloseOutDate]) And (DateDiff(["d"],[SurveyDate],Now())>45),1,0))

基本上,我需要统计在 45 天期限内未完成调查的所有结果。

如果我们超过了截止日期,则向总数返回 1 值。 如果仍在 45 天窗口内,则返回 0 值。

SurveyDate = Day the survey was conducted
CloseOutDate = Day the survey is completed.

我已经尝试过,无论如何,我的花生大脑可以重写它。

有什么方法可以让它将日期识别为任何间隔而不是参数值?

sql ms-access calculated-columns datediff
1个回答
1
投票

DateDiff 定义为

DateDiff(interval, date1, date2[, firstdayofweek[, firstweekofyear]])

其中

interval
是字符串。

部分 描述
间隔 必填。字符串表达式,它是用于计算 date1 和 date2 之间差异的时间间隔。

在你的情况下,间隔=“d”

(DateDiff("d",[SurveyDate],Now())

如果您编写

["d"]
,Access 会将其解释为变量或列名称
"d"

最新问题
© www.soinside.com 2019 - 2025. All rights reserved.