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.
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
INTEGER
zurü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.