DATETIMEBIN - Cosmos DB 中的查询语言

DATETIMEBIN 函数返回日期和时间字符串值,该值是提供日期和时间字符串的一部分的装箱(或舍入)的结果。

Syntax

DATETIMEBIN(<date_time>, <date_time_part> [, <bin_size>] [, <bin_start_date_time>])

Arguments

Description
date_time ISO 8601 格式 YYYY-MM-DDThh:mm:ss.fffffffZ的协调世界时(UTC)日期和时间字符串。
date_time_part 表示 ISO 8601 日期格式规范的一部分的字符串。 此部分用于指示日期到 bin 的哪个方面。
bin_size 指定箱大小的可选数值。 如果未指定,默认值为 1
bin_start_date_time ISO 8601 格式的可选 UTC 日期和时间字符串。 如果未指定,则默认值为 Unix 纪元 1970-01-01T00:00:00.000000Z

返回类型

返回日期和时间字符串值。

例子

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

Bin 日期和时间值

在此示例中,函数 DATETIMEBIN 用于按天、小时、秒以及自定义箱大小和开始日期来装箱日期和时间。

SELECT VALUE {
  binDay: DATETIMEBIN("2021-01-08T18:35:00.0000000", "dd"),
  binHour: DATETIMEBIN("2021-01-08T18:35:00.0000000", "hh"),
  binSecond: DATETIMEBIN("2021-01-08T18:35:00.0000000", "ss"),
  binFiveHours: DATETIMEBIN("2021-01-08T18:35:00.0000000", "hh", 5),
  binSevenDaysUnixEpoch: DATETIMEBIN("2021-01-08T18:35:00.0000000", "dd", 7),
  binSevenDaysWindowsEpoch: DATETIMEBIN("2021-01-08T18:35:00.0000000", "dd", 7, "1601-01-01T00:00:00.0000000")
}
[
  {
    "binDay": "2021-01-08T00:00:00.0000000Z",
    "binHour": "2021-01-08T18:00:00.0000000Z",
    "binSecond": "2021-01-08T18:35:00.0000000Z",
    "binFiveHours": "2021-01-08T15:00:00.0000000Z",
    "binSevenDaysUnixEpoch": "2021-01-07T00:00:00.0000000Z",
    "binSevenDaysWindowsEpoch": "2021-01-04T00:00:00.0000000Z"
  }
]

注解

  • 此函数出于以下原因返回 undefined
  • 指定的日期和时间部分无效。
  • 箱大小值不是有效的整数,为零,或为负。
  • 任一参数中的日期和时间不是有效的 ISO 8601 日期和时间字符串。
  • 箱的日期和时间在 Windows 纪元“1601”之前。
  • ISO 8601 日期格式指定要用于此函数的有效日期和时间部分: | |格式 | |--- |--- | |Year | yearyyyyyy | |Month | monthmmm | |Day | day、、 ddd| |Hour | hourhh | |Minute | minutemin | |第二 | second个,sss | |毫秒 | millisecondms | |Microsecond | microsecondmcs | |Nanosecond | nanosecondns |