企业级搜索 SQL 语法中的 DATEADD 函数

执行时间和日期计算,以匹配具有日期类型的属性。

DATEADD (DateTimeUnits, OffsetValue, DateTime)

Parameters

使用 DATEADD 函数可获取在当前日期和时间的指定时间长度之前的日期和时间。

DateTimeUnits 指定 DateTimeValue 参数的单位,可以是“YEAR”、“QUARTER”、“MONTH”、“WEEK”、“DAY”、“HOUR”、“MINUTE”或“SECOND”。该值区分大小写。不需要用引号将该参数括起来。

OffsetValue 指定时间偏移量,使用 DateTimeUnits 参数指定的单位。OffsetValue 必须是一个负整数。不支持正值。

DateTime 是一个用来计算偏移量的时间戳。这不能是日期字符串,必须为 GETGMTDATE 或另一 DATEADD 函数的结果。

Remarks

DATEADD 函数只能用于文字值比较,且只能位于比较运算符的右侧。

GETGMTDATE 函数返回以格林威治标准时间 (GMT) 表示的当前日期和时间。请记住,此值可能与您计算机本的地时间不同。

可以使用多个 DATEADD 函数来合并偏移量单位。

备注

不要使用等号 (=) 比较运算符,因为内部时间表示方法可能会产生舍入误差,由此导致意外的匹配结果。

示例

以下 WHERE 子句示例匹配最近五天内修改过的文档:

...WHERE LastModifiedTime <=DATEADD (DAY, -5, GETGMTDATE())

以下 WHERE 子句示例匹配最近两天零四个小时内修改过的文档:

...WHERE LastModifiedTime <=DATEADD (DAY, -2, DATEADD (HOUR, -4, GETGMTDATE()))

See Also

参考

企业级搜索 SQL 语法中的非全文谓词

企业级搜索 SQL 语法中的文字值比较