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 Blog-Posting.

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 serialisierte JSON-Datentypen im VARCHAR-Format zurückgibt.

binary_value

Ein Binärwert des Datentyps VARBYTE.

Rückgabetyp

BOOLEAN

Nutzungshinweise

  • CAN_JSON_PARSE gibt für leere Zeichenketten „false“ zurück. 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. Es gibt „true“ zurück, so dass 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 das JSON-Format hart. Es gibt „false“ zurück, so dass 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."