IS_PRIMITIVE - Cosmos DB 中的查询语言

IS_PRIMITIVE 函数返回一个布尔值,该值指示指定表达式的类型是否为基元(字符串、布尔值、数值或 null)。

一个 Azure Cosmos DB for NoSQL 系统函数,如果指定表达式的类型是基元(字符串、布尔值、数值或 null),则返回 true。

Syntax

IS_PRIMITIVE(<expr>)

Arguments

Description
expr 任何表达式。

返回类型

返回布尔表达式。

例子

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

检查值是否为基元

在此示例中,该 IS_PRIMITIVE 函数用于检查各种值,以查看它们是否为基元。

SELECT VALUE {
  isBooleanAPrimitive: IS_PRIMITIVE(true),
  isNumberAPrimitive: IS_PRIMITIVE(1),
  isStringAPrimitive: IS_PRIMITIVE("value"),
  isArrayAPrimitive: IS_PRIMITIVE([ "green", "red", "yellow" ]),
  isNullAPrimitive: IS_PRIMITIVE(null),
  isObjectAPrimitive: IS_PRIMITIVE({ "name": "Tecozow coat" }),
  isObjectStringPropertyAPrimitive: IS_PRIMITIVE({ "name": "Tecozow coat" }.name),
  isObjectBooleanPropertyAPrimitive: IS_PRIMITIVE({ "onSale": false }.onSale),
  isUndefinedAPrimitive: IS_PRIMITIVE({}.category)
}
[
  {
    "isBooleanAPrimitive": true,
    "isNumberAPrimitive": true,
    "isStringAPrimitive": true,
    "isArrayAPrimitive": false,
    "isNullAPrimitive": true,
    "isObjectAPrimitive": false,
    "isObjectStringPropertyAPrimitive": true,
    "isObjectBooleanPropertyAPrimitive": true,
    "isUndefinedAPrimitive": false
  }
]

注解

  • 此函数受益于范围索引的使用。 有关详细信息,请参阅 范围索引