Sdílet prostřednictvím


ARRAY_CONTAINS (dotaz NoSQL)

PLATÍ PRO: NoSQL

Vrátí logickou hodnotu označující, zda pole obsahuje zadanou hodnotu. Částečnou nebo úplnou shodu objektu můžete zkontrolovat pomocí logického výrazu v rámci funkce.

Syntaxe

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

Argumenty

Popis
arr_expr Maticový výraz.
expr Výraz, který chcete vyhledat v rámci pole.
bool_expr Logický výraz označující, jestli má hledání zkontrolovat částečnou shodu (true) nebo úplnou shodu (false). Pokud není zadána, je výchozí hodnota false.

Návratové typy

Vrátí logickou hodnotu.

Příklady

Následující příklad ukazuje, jak pomocí této funkce zkontrolovat konkrétní hodnoty nebo objekty v poli.

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
  }
]

Poznámky

  • Tato systémová funkce má výhody z indexu rozsahu.