Amazon Redshift unterstützt ab dem 1. November 2025 nicht mehr die Erstellung neuer Python-UDFs. Wenn Sie Python-UDFs verwenden möchten, erstellen Sie die UDFs vor diesem Datum. Bestehende Python-UDFs funktionieren weiterhin wie gewohnt. Weitere Informationen finden Sie im Blog-Posting
Die Funktion JSON_SIZE
Die Funktion JSON_SIZE gibt die Anzahl der Bytes in dem gegebenen SUPER-Ausdruck zurück, wenn in eine Zeichenfolge serialisiert.
Syntax
JSON_SIZE(super_expression)
Argumente
- super_expression
-
Eine
SUPER-Konstante oder ein Ausdruck.
Rückgabetyp
INTEGER-
Die Funktion JSON_SIZE gibt eine
INTEGERzurück, die die Anzahl der Bytes in der Eingabezeichenfolge anzeigt. Dieser Wert unterscheidet sich von der Anzahl der Zeichen. Zum Beispiel ist das UTF-8-Zeichen ⬤ (ein schwarzer Punkt) 3 Bytes groß, obwohl es nur 1 Zeichen ist.
Nutzungshinweise
JSON_SIZE(x) ist funktionell identisch mit OCTET_LENGTH(JSON_SERIALIZE). Beachten Sie jedoch, dass JSON_SERIALIZE einen Fehler zurückgibt, wenn der angegebene SUPER-Ausdruck bei der Serialisierung die VARCHAR-Grenze des Systems überschreiten würde. Bei JSON_SIZE gibt es diese Einschränkung nicht.
Beispiele
Verwenden Sie das folgende Beispiel, um die Länge eines SUPER-Werts zurückzugeben, der zu einer Zeichenfolge serialisiert wurde.
SELECT JSON_SIZE(JSON_PARSE('[10001,10002,"⬤"]'));+-----------+ | json_size | +-----------+ | 19 | +-----------+
Beachten Sie, dass der angegebene SUPER-Ausdruck 17 Zeichen umfasst. ⬤ ist jedoch ein 3-Byte-Zeichen, sodass JSON_SIZE 19 zurückgibt.