Função MySQL JSON_UNQUOTE()

Resumo : neste tutorial, você aprenderá como usar a JSON_UNQUOTE()função MySQL para remover aspas de uma string JSON.

Introdução à função JSON_UNQUOTE() do MySQL

A JSON_UNQUOTE()função permite remover aspas duplas de uma string JSON. Aqui está a sintaxe da JSON_UNQUOTE()função:

JSON_UNQUOTE(json_val)Linguagem de código:  SQL (linguagem de consulta estruturada)  ( sql )

Nesta sintaxe:

  • json_val: a string JSON da qual você deseja remover as aspas.

A JSON_QUOTE()função retorna um valor bruto sem aspas. A função retorna NULLse json_valfor NULL.

Se json_valcomeçar e terminar com aspas duplas, mas não for uma string JSON literal válida, a JSON_UNQUOTE()função gerará um erro.

Exemplo de função JSON_UNQUOTE() do MySQL

Vejamos um exemplo de uso da JSON_UNQUOTE()função.

Primeiro, crie uma tabela chamada persons:

CREATE TABLE persons (
    id INT PRIMARY KEY,
    info JSON
);Linguagem de código:  SQL (linguagem de consulta estruturada)  ( sql )

Segundo, insira duas linhas na personstabela:

INSERT INTO persons (id, info) 
VALUES
(1, '{"name": "John", "age": 25, "city": "New York"}'),
(2, '{"name": "Alice", "age": 30, "city": "San Francisco"}');Linguagem de código:  SQL (linguagem de consulta estruturada)  ( sql )

Terceiro, consulte a cidade de cada pessoa:

SELECT 
  info -> "$.city" city 
FROM 
  persons;Linguagem de código:  SQL (linguagem de consulta estruturada)  ( sql )

Saída:

+-----------------+
| city            |
+-----------------+
| "New York"      |
| "San Francisco" |
+-----------------+
2 rows in set (0.00 sec)Linguagem de código:  SQL (linguagem de consulta estruturada)  ( sql )

Os nomes das cidades estão entre aspas duplas. Para remover as aspas duplas, você usa a JSON_UNQUOTE()função:

SELECT 
  JSON_UNQUOTE(info -> "$.city") city 
FROM 
  persons;Linguagem de código:  SQL (linguagem de consulta estruturada)  ( sql )

Saída:

+---------------+
| city          |
+---------------+
| New York      |
| San Francisco |
+---------------+
2 rows in set (0.01 sec)Linguagem de código:  SQL (linguagem de consulta estruturada)  ( sql )

O MySQL o torna mais conciso ao fornecer o ->>operador que extrai e remove aspas de um valor JSON:

SELECT 
  info ->> "$.city" city 
FROM 
  persons;Linguagem de código:  SQL (linguagem de consulta estruturada)  ( sql )

Saída:

+---------------+
| city          |
+---------------+
| New York      |
| San Francisco |
+---------------+
2 rows in set (0.00 sec)Linguagem de código:  SQL (linguagem de consulta estruturada)  ( sql )

Resumo

  • Use a JSON_UNQUOTE()função para remover aspas de uma string JSON.

Deixe um comentário

O seu endereço de email não será publicado. Campos obrigatórios marcados com *