Die vorliegende Übersetzung wurde maschinell erstellt. Im Falle eines Konflikts oder eines Widerspruchs zwischen dieser übersetzten Fassung und der englischen Fassung (einschließlich infolge von Verzögerungen bei der Übersetzung) ist die englische Fassung maßgeblich.
JSON_ _ _ _ Funktion EXTRACT ARRAY ELEMENT TEXT
Anmerkung
JSON_ PARSE und die zugehörigen Funktionen analysieren JSON Werte alsSUPER, was Amazon Redshift effizienter analysiert als. VARCHAR
Anstatt JSON _ _ _ EXTRACT ARRAY ELEMENT _ zu verwenden, empfehlen wirTEXT, dass Sie Ihre JSON Zeichenketten mit dem analysieren, um einen Wert JSONPARSEFunktion _ zu erhalten. SUPER Fragen Sie dann das gewünschte Element anhand seines Array-Index ab und verwenden Sie dabei die value[element position]
Syntax. Weitere Informationen zum Abfragen von Array-Elementen in SUPER Werten finden Sie unter. Abfragen von halbstrukturierten Daten
Die TEXT Funktion JSON _ EXTRACT _ ARRAY ELEMENT _ gibt ein JSON Array-Element im äußersten Array einer JSON Zeichenfolge zurück, wobei ein auf Null basierender Index verwendet wird. Das erste Element in einem Array befindet sich an Position 0. Wenn der Index negativ oder außerhalb des zulässigen Bereichs ist, gibt JSON _ _ _ EXTRACT ARRAY ELEMENT _ eine leere Zeichenfolge TEXT zurück. Wenn das Argument null_if_invalid auf gesetzt ist true
und die JSON Zeichenfolge ungültig ist, gibt die Funktion einen Fehler zurück, NULL
anstatt einen Fehler zurückzugeben.
Weitere Informationen finden Sie unter JSONFunktionen.
Syntax
JSON_EXTRACT_ARRAY_ELEMENT_TEXT('json string', pos [, null_if_invalid ] )
Argumente
- json_string
-
Eine richtig formatierte Zeichenfolge. JSON
- pos
-
Eine
INTEGER
, die unter Verwendung eines nullbasierten Array-Index den Index des Array-Elements darstellt, das zurückgegeben werden soll.
- null_if_invalid
-
(Optional) Ein
BOOLEAN
Wert, der angibt, ob zurückgegeben werden soll,NULL
wenn die JSON Eingabezeichenfolge ungültig ist, anstatt einen Fehler zurückzugeben. Um zurückzugebenNULL
, wenn der ungültig JSON ist, geben Sietrue
(t
) an. Um einen Fehler zurückzugeben, falls der ungültig JSON ist, geben Siefalse
(f
) an. Der Standardwert istfalse
.
Rückgabetyp
VARCHAR
-
Eine
VARCHAR
Zeichenfolge, die das von pos referenzierte JSON Array-Element darstellt.
Beispiele
Verwenden Sie das folgende Beispiel, um ein Array-Element an Position 2 zurückzugeben, das das dritte Element eines null-basierten Array-Index ist.
SELECT JSON_EXTRACT_ARRAY_ELEMENT_TEXT('[111,112,113]', 2);
+---------------------------------+ | json_extract_array_element_text | +---------------------------------+ | 113 | +---------------------------------+
Verwenden Sie das folgende Beispiel, um einen Fehler zurückzugeben, weil das ungültig JSON ist.
SELECT JSON_EXTRACT_ARRAY_ELEMENT_TEXT('["a",["b",1,["c",2,3,null,]]]',1);
ERROR: invalid json array object ["a",["b",1,["c",2,3,null,]]]
Verwenden Sie das folgende Beispiel, um null_if_invalid auf true zu setzen, sodass die Anweisung zurückgibtJSON, NULL
anstatt einen Fehler für ungültig zurückzugeben.
SELECT JSON_EXTRACT_ARRAY_ELEMENT_TEXT('["a",["b",1,["c",2,3,null,]]]',1,true);
+---------------------------------+ | json_extract_array_element_text | +---------------------------------+ | NULL | +---------------------------------+