Condividi tramite

IS_DATETIME (NoSQL 查询)

返回一个布尔值,该值指示日期时间字符串是否有效。

Syntax

IS_DATETIME(<expr>)  

Arguments

Description
expr 要计算的表达式。

返回类型

返回布尔表达式。

例子

以下示例显示了具有不同日期/时间格式的 IS_DATETIME 函数的各种用法。

SELECT VALUE {
    "case1": IS_DATETIME("2024-12-12"),
    "case2": IS_DATETIME("2024-12-12Z"),
    "case3": IS_DATETIME("2024-12-12 20:21:25"),
    "case4": IS_DATETIME("2024-12-12T20:21:25Z"),
    "case5": IS_DATETIME("2024-12-12T20:21:25.123"),
    "case6": IS_DATETIME("2024-12-12 20:21:25.123Z"),
    "case7": IS_DATETIME("2024-12-12T20Z"),
    "case8": IS_DATETIME("2024-12-12 20:21:25.")
}
[
    {
        "case1": true,
        "case2": true,
        "case3": true,
        "case4": true,
        "case5": true,
        "case6": true,
        "case7": false,
        "case8": false
    }
]

注解

  • 有效的 DateTime 字符串必须以年份(YYYY)的四位数字开头,后跟短划线 - ,例如 2023-
  • 然后,有效的 DateTime 字符串必须有两位数月份后跟短划线 - ,例如 2023-03-
  • 然后,有效的 DateTime 字符串必须有一个两位数的日期,例如 2023-03-06
  • 有效的 DateTime 字符串可以以两位数的日期结束,且不带时间有效
  • 它还可以在一个月的 Z 一天之后结束,并且仍然有效,例如 2023-03-06Z
  • 如果 DateTime 字符串包含时间,则月份的日期可以包括空格或 T 时间指示符, 2023-03-06 15:29:00Z 或者 2023-03-06T15:29:00Z
  • 除空格之外的任何其他字符或 T 无效字符
  • 在时间指示符字符之后,必须有两位数小时后跟 : 冒号时间分隔符,后跟一个两位数分钟部分,后跟 : 冒号时间分隔符,后跟两位数秒部分,这可以结束有效的 DateTime 字符串,例如 2023-03-06T15:29:59
  • 秒也可以跟在 ( Z UTC) 后,并且有效,例如 2023-03-06T15:29:59Z
  • 如果有小数秒,则它们前面必须有一个 .
  • 若要有效, . 必须遵循此小数秒指示符,并且必须至少使用 1 位数字和 7 位数字(例如或 2023-03-06T15:29:59.92023-03-06T15:29:59.9Z 或或或 2023-03-06T15:29:59.12345672023-03-06T15:29:59.1234567Z
  • 此函数执行完全扫描。