Funktion CAN_JSON_PARSE - Amazon Redshift

Amazon Redshift wird UDFs ab dem 1. November 2025 die Erstellung von neuem Python nicht mehr unterstützen. Wenn Sie Python verwenden möchten UDFs, erstellen Sie das UDFs vor diesem Datum liegende. Bestehendes Python UDFs wird weiterhin wie gewohnt funktionieren. Weitere Informationen finden Sie im Blogbeitrag.

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.

Funktion CAN_JSON_PARSE

Die Funktion CAN_JSON_PARSE analysiert Daten im JSON-Format und gibt true zurück, wenn das Ergebnis mithilfe der Funktion JSON_PARSE in einen SUPER-Wert konvertiert werden kann.

Syntax

CAN_JSON_PARSE( {json_string | binary_value} )

Argumente

json_string

Ein Ausdruck, der serialisiertes JSON in Form zurückgibt. VARCHAR

binary_value

Ein Binärwert des Datentyps VARBYTE.

Rückgabetyp

BOOLEAN

Nutzungshinweise

  • CAN_JSON_PARSE gibt für leere Zeichenketten den Wert false zurück. Es gibt NULL zurück, wenn das Eingabeargument Null ist.

Beispiele

Das folgende Beispiel zeigt, wie CAN_JSON_PARSE auf einem korrekt formatierten JSON-Array unter Verwendung einer CASE-Bedingung ausgeführt wird. Sie gibt true zurück, sodass Amazon Redshift die Funktion JSON_PARSE für den Beispielwert ausführt.

SELECT CASE WHEN CAN_JSON_PARSE('[10001,10002,"abc"]') THEN JSON_PARSE('[10001,10002,"abc"]') END; case --------------------- '[10001,10002,"abc"]'

Das folgende Beispiel zeigt, wie CAN_JSON_PARSE unter Verwendung einer CASE-Bedingung auf einem Wert ausgeführt wird, der nicht im JSON-Format ist. Es gibt false zurück, sodass Amazon Redshift stattdessen das Segment in der ELSE-Klausel der CASE-Bedingung zurückgibt.

SELECT CASE WHEN CAN_JSON_PARSE('This is a string.') THEN JSON_PARSE('This is a string.') ELSE 'This is not JSON.' END; case --------------------- "This is not JSON."