ARRAY_CONTAINS(NoSQL 查询)

适用范围: NoSQL

返回一个布尔值,指示数组是否包含指定的值。 可以通过在函数中使用布尔表达式来检查对象的部分匹配或完全匹配。

语法

ARRAY_CONTAINS(<array_expr>, <expr> [, <bool_expr>])  

参数

说明
arr_expr 一个数组表达式。
expr 要在数组中搜索的表达式。
bool_expr 一个布尔表达式,指示搜索应检查部分匹配 (true) 还是完全匹配 (false)。 如果未指定,默认值为 false

返回类型

返回一个布尔值。

示例

以下示例演示如何使用此函数检查数组中是否有特定的值或对象。

SELECT VALUE {
    containsItem: ARRAY_CONTAINS(["coats", "jackets", "sweatshirts"], "coats"),
    missingItem: ARRAY_CONTAINS(["coats", "jackets", "sweatshirts"], "hoodies"),
    containsFullMatchObject: ARRAY_CONTAINS([{ category: "shirts", color: "blue" }], { category: "shirts", color: "blue" }),
    missingFullMatchObject: ARRAY_CONTAINS([{ category: "shirts", color: "blue" }], { category: "shirts" }),
    containsPartialMatchObject: ARRAY_CONTAINS([{ category: "shirts", color: "blue" }], { category: "shirts" }, true),
    missingPartialMatchObject: ARRAY_CONTAINS([{ category: "shirts", color: "blue" }], { category: "shorts", color: "blue" }, true)
}
[
  {
    "containsItem": true,
    "missingItem": false,
    "containsFullMatchObject": true,
    "missingFullMatchObject": false,
    "containsPartialMatchObject": true,
    "missingPartialMatchObject": false
  }
]

注解