Kategorien:

Semistrukturierte Datenfunktionen (Array/Objekt)

OBJECT_PICK

Gibt ein neues OBJECT zurück, das einige der Schlüssel-Wert-Paare eines vorhandenen Objekts enthält.

Um die Schlüssel-Wert-Paare zu identifizieren, die in das neue Objekt aufgenommen werden sollen, übergeben Sie die Schlüssel als Argumente oder als ein Array mit Schlüsseln.

Wenn ein bestimmter Schlüssel im Eingabeobjekt nicht vorhanden ist, wird der Schlüssel ignoriert.

Syntax

OBJECT_PICK( <object>, <key1> [, <key2>, ... ] )

OBJECT_PICK( <object>, <array> )
Copy

Argumente

object

Das Eingabeobjekt.

key1, key2

Ein oder mehrere Schlüssel, die die Schlüssel-Wert-Paare identifizieren, die im zurückgegebenen Objekt enthalten sein sollen.

array

Array von Schlüsseln, die die Schlüssel-Wert-Paare identifizieren, die im zurückgegebenen Objekt enthalten sein sollen.

Rückgabewerte

Gibt ein neues OBJECT zurück, das die angegebenen Schlüssel-Wert-Paare enthält.

Beispiele

Im folgenden Beispiel wird OBJECT_PICK aufgerufen, um ein neues Objekt zu erstellen, das zwei der drei Schlüssel-Wert-Paare aus einem vorhandenen Objekt enthält:

SELECT OBJECT_PICK(
    OBJECT_CONSTRUCT(
        'a', 1,
        'b', 2,
        'c', 3
    ),
    'a', 'b'
) AS new_object;
+------------+
| NEW_OBJECT |
|------------|
| {          |
|   "a": 1,  |
|   "b": 2   |
| }          |
+------------+
Copy

Im obigen Beispiel werden die Schlüssel als Argumente an OBJECT_PICK übergeben. Sie können auch ein Array verwenden, um die Schlüssel anzugeben, wie unten gezeigt:

SELECT OBJECT_PICK(
    OBJECT_CONSTRUCT(
        'a', 1,
        'b', 2,
        'c', 3
    ),
    ARRAY_CONSTRUCT('a', 'b')
) AS new_object;
+------------+
| NEW_OBJECT |
|------------|
| {          |
|   "a": 1,  |
|   "b": 2   |
| }          |
+------------+
Copy