ARRAY_CONTAINS (NoSQL-Abfrage)
GILT FÜR: NoSQL
Gibt einen booleschen Wert zurück, um anzugeben, ob das Array den angegebenen Wert enthält. Anhand eines booleschen Ausdrucks innerhalb der Funktion können Sie nach einem Objekt suchen, das vollständig oder teilweise übereinstimmt.
Syntax
ARRAY_CONTAINS(<array_expr>, <expr> [, <bool_expr>])
Argumente
BESCHREIBUNG | |
---|---|
arr_expr |
Ein Arrayausdruck. |
expr |
Ausdruck, nach dem innerhalb des Arrays gesucht werden soll. |
bool_expr |
Ein boolescher Ausdruck, der angibt, ob die Suche nach einer partiellen Übereinstimmung (true ) oder einer vollständigen Übereinstimmung (false ) suchen soll. Wenn Sie hier nichts angeben, lautet der Standardwert false . |
Rückgabetypen
Gibt einen booleschen Wert zurück.
Beispiele
Im folgenden Beispiel wird veranschaulicht, wie Sie mithilfe dieser Funktion auf bestimmte Werte oder Objekte in einem Array überprüfen.
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
}
]
Bemerkungen
- Diese Systemfunktion profitiert von einem Bereichsindex.