DATETIMEADD - Cosmos DB 中的查询语言(在 Azure 和 Fabric 中)

DATETIMEADD 函数返回一个日期和时间字符串值,该值是向提供的日期和时间字符串添加指定数字值的结果。

Syntax

DATETIMEADD(<date_time_part>, <numeric_expr>, <date_time>)

Arguments

Description
date_time_part 表示 ISO 8601 日期格式规范的一部分的字符串。 此部分用于指示要由相关数值表达式修改的日期的哪个方面。
numeric_expr 导致有符号整数的数值表达式。
date_time ISO 8601 格式 YYYY-MM-DDThh:mm:ss.fffffffZ的协调世界时(UTC)日期和时间字符串。

返回类型

以 ISO 8601 格式 YYYY-MM-DDThh:mm:ss.fffffffZ返回 UTC 日期和时间字符串。

例子

本部分包含有关如何使用此查询语言构造的示例。

添加和减去日期部分

在此示例中,该 DATETIMEADD 函数用于在日期中添加和减去年、月、天和小时。

SELECT VALUE {
  addOneYear: DATETIMEADD("yyyy", 1, "2020-07-03T00:00:00.0000000"),
  addOneMonth: DATETIMEADD("mm", 1, "2020-07-03T00:00:00.0000000"),
  addOneDay: DATETIMEADD("dd", 1, "2020-07-03T00:00:00.0000000"),
  addOneHour: DATETIMEADD("hh", 1, "2020-07-03T00:00:00.0000000"),
  subtractOneYear: DATETIMEADD("yyyy", -1, "2020-07-03T00:00:00.0000000"),
  subtractOneMonth: DATETIMEADD("mm", -1, "2020-07-03T00:00:00.0000000"),
  subtractOneDay: DATETIMEADD("dd", -1, "2020-07-03T00:00:00.0000000"),
  subtractOneHour: DATETIMEADD("hh", -1, "2020-07-03T00:00:00.0000000"),
  modifySecondsExpression: DATETIMEADD("ss", 5 * -5, "2020-07-03T00:00:00.0000000")
}
[
  {
    "addOneYear": "2021-07-03T00:00:00.0000000Z",
    "addOneMonth": "2020-08-03T00:00:00.0000000Z",
    "addOneDay": "2020-07-04T00:00:00.0000000Z",
    "addOneHour": "2020-07-03T01:00:00.0000000Z",
    "subtractOneYear": "2019-07-03T00:00:00.0000000Z",
    "subtractOneMonth": "2020-06-03T00:00:00.0000000Z",
    "subtractOneDay": "2020-07-02T00:00:00.0000000Z",
    "subtractOneHour": "2020-07-02T23:00:00.0000000Z",
    "modifySecondsExpression": "2020-07-02T23:59:35.0000000Z"
  }
]

注解

  • ISO 8601 日期格式指定要用于此函数的有效日期和时间部分: | |格式 | |--- |--- | |Year | yearyyyyyy | |Month | monthmmm | |Day | day、、 ddd| |Hour | hourhh | |Minute | minutemin | |第二 | second个,sss | |毫秒 | millisecondms | |Microsecond | microsecondmcs | |Nanosecond | nanosecondns |
  • 此函数出于以下原因返回 undefined
    • 指定的日期和时间部分无效。
    • 数值表达式不是有效的整数。
    • 参数中的日期和时间不是有效的 ISO 8601 日期和时间字符串。