Función JSON_SIZE
La función JSON_SIZE devuelve el número de bytes de la expresión SUPER
dada cuando se serializa en una cadena.
Sintaxis
JSON_SIZE(super_expression)
Argumentos
- super_expression
-
Una constante o expresión
SUPER
.
Tipo de retorno
INTEGER
-
La función JSON_SIZE devuelve un valor
INTEGER
que indica la cantidad de bytes en la cadena de entrada. Este valor es diferente del número de caracteres. Por ejemplo, el carácter UTF-8 ⬤, un punto negro, tiene un tamaño de 3 bytes aunque es 1 carácter.
Notas de uso
JSON_SIZE (x) es funcionalmente idéntico a OCTET_LENGTH (JSON_SERIALIZE). Sin embargo, tenga en cuenta que JSON_SERIALIZE devuelve un error cuando la expresión SUPER
proporcionada supera el límite VARCHAR
del sistema cuando se serializa. JSON_SIZE no tiene esta limitación.
Ejemplos
Para devolver la longitud de un valor SUPER
serializado en una cadena, use el siguiente ejemplo.
SELECT JSON_SIZE(JSON_PARSE('[10001,10002,"⬤"]'));
+-----------+ | json_size | +-----------+ | 19 | +-----------+
Tenga en cuenta que la expresión SUPER
proporcionada tiene 17 caracteres, pero ⬤ es un carácter de 3 bytes, por lo que JSON_SIZE devuelve 19
.