Função JSON_SIZE
A função JSON_SIZE retorna o número de bytes na expressão SUPER
fornecida quando serializada em uma string.
Sintaxe
JSON_SIZE(super_expression)
Argumentos
- super_expression
-
Uma constante ou expressão
SUPER
.
Tipo de retorno
INTEGER
-
A função JSON_SIZE retorna um
INTEGER
indicando o número de bytes na string de entrada. Esse valor é diferente do número de caracteres. Por exemplo, o caractere UTF-8 ⬤, um ponto preto, tem 3 bytes de tamanho, mesmo que tenha um caractere.
Observações de uso
JSON_SIZE (x) é funcionalmente idêntico a OCTET_LENGTH (JSON_SERIALIZE). No entanto, observe que JSON_SERIALIZE retorna um erro quando a expressão SUPER
fornecida excede o limite VARCHAR
do sistema quando serializada. JSON_SIZE não tem essa limitação.
Exemplos
Para retornar o tamanho de um valor SUPER
serializado para uma string, use o exemplo a seguir.
SELECT JSON_SIZE(JSON_PARSE('[10001,10002,"⬤"]'));
+-----------+ | json_size | +-----------+ | 19 | +-----------+
Observe que a expressão SUPER
fornecida tem 17 caracteres, mas ⬤ é um caractere de 3 bytes, então JSON_SIZE retorna 19
.