Pular para o conteúdo principal
Documentos
FunçõesExpressõesKeywordsDeclaraçõesCláusulas

MySQL JSON_UNQUOTE() Function

A função `JSON_UNQUOTE()` do MySQL é usada para remover as aspas externas de um literal de cadeia de caracteres JSON. Ele é particularmente útil para extrair e exibir valores de cadeia de caracteres JSON sem as aspas ao redor.

Uso

A função `JSON_UNQUOTE()` é usada quando você precisa recuperar um valor de cadeia de caracteres JSON em sua forma simples, sem as aspas duplas. Ele é frequentemente aplicado ao processar dados JSON armazenados em tabelas MySQL.

JSON_UNQUOTE(json_val)

Nessa sintaxe, `json_val` representa o valor da cadeia de caracteres JSON da qual você deseja remover as aspas.

Exemplos

1. Desfazer as aspas básicas de uma cadeia de caracteres JSON

SELECT JSON_UNQUOTE('"Hello World"') AS result;

Este exemplo remove as aspas da string literal JSON `"Hello World"`, resultando na string simples `Hello World`.

2. Como remover a aspas de um valor JSON de uma tabela

SELECT JSON_UNQUOTE(json_column->'$.name') AS name
FROM my_table;

Neste exemplo, a função `JSON_UNQUOTE()` é usada para extrair e desfazer as aspas do campo `name` de um objeto JSON armazenado na `json_column` de `my_table`. O operador de seta (`->`) é usado para acessar uma expressão de caminho JSON.

3. Manipulação de dados JSON aninhados

SELECT JSON_UNQUOTE(json_column->'$.address.city') AS city
FROM my_table
WHERE JSON_UNQUOTE(json_column->'$.address.city') = 'New York';

Aqui, `JSON_UNQUOTE()` é aplicado a um campo JSON aninhado para comparar e recuperar nomes de cidades sem aspas, filtrando especificamente para `New York`.

Dicas e práticas recomendadas

  • Garanta uma entrada JSON válida. Passe cadeias de caracteres JSON válidas para `JSON_UNQUOTE()` para evitar erros ou resultados inesperados.
  • Valores JSON que não são strings. Quando a entrada não é uma cadeia de caracteres JSON válida (por exemplo, um número ou booleano), `JSON_UNQUOTE()` retorna o valor como está, sem gerar um erro.
  • Tratamento de erros. Se a entrada estiver malformada ou não for uma cadeia de caracteres JSON válida, `JSON_UNQUOTE()` poderá retornar `NULL` ou gerar um erro, dependendo da versão do MySQL.
  • Use com funções JSON. Combine `JSON_UNQUOTE()` com outras funções JSON, como `JSON_EXTRACT()`, para que você possa lidar com JSON de forma mais complexa.
  • Verifique se há valores NULL. Esteja preparado para lidar com resultados `NULL` se o caminho JSON de entrada não existir ou se a entrada for `NULL`.
  • Otimize para facilitar a leitura. Use aliases para esclarecer a finalidade dos valores sem aspas em suas consultas.
  • Compatibilidade. Esteja ciente das possíveis diferenças de comportamento entre as versões do MySQL e consulte a documentação para obter detalhes específicos da versão.

Funções relacionadas

  • JSON_EXTRACT(): Use essa função para extrair dados de um documento JSON.
  • JSON_SET(): Modifique um documento JSON definindo novos valores.

Aprimoramento de SQL para iniciantes

Adquira as habilidades de SQL para interagir com seus dados e consultá-los.
Comece a aprender de graça