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
}
]
注釈
- このシステム関数では範囲インデックスが役に立ちます。