Função JSON_KEYS() do MySQL

Resumo : neste tutorial, você aprenderá como usar a JSON_KEYS()função MySQL para recuperar os nomes das propriedades de um objeto JSON.

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

A JSON_KEYS()função é usada para recuperar as chaves ou nomes de propriedades de um objeto JSON em um documento JSON.

Aqui está a sintaxe da JSON_KEYS()função:

JSON_KEYS(json_doc, [path])Linguagem de código:  SQL (linguagem de consulta estruturada)  ( sql )

Nesta sintaxe:

  • json_doc: este é o objeto JSON do qual você deseja extrair o nome da propriedade.
  • path(opcional): Este é o caminho que especifica um objeto dentro de um documento cujas chaves você deseja extrair.

A JSON_KEYS()função retorna uma matriz JSON que contém nomes de propriedades do json_docobjeto ou do objeto JSON especificado pelo arquivo path.

A JSON_KEYS()função retorna NULLse json_docfor nulo ou json_docnão for um objeto JSON válido ou se o caminho não localizar um objeto dentro do arquivo json_doc.

A JSON_KEYS()função emite um erro se json_docnão for um documento JSON válido, o caminho não for válido ou contiver curingas (*) ou (**).

Exemplos de funções JSON_KEYS() do MySQL

Vejamos alguns exemplos de uso da JSON_KEYS()função:

1) Uso básico da função JSON_KEYS()

Suponha que você tenha o seguinte objeto JSON:

{
    "name": "John",
    "age": 25,
    "job": "MySQL Developer"
}Linguagem de código:  SQL (linguagem de consulta estruturada)  ( sql )

O exemplo a seguir usa a JSON_KEYS()função para extrair todos os nomes de propriedades do objeto JSON acima:

SELECT 
  JSON_KEYS(
    '{"name":"John","age":25,"job":"MySQL Developer"}'
  ) properties;Linguagem de código:  SQL (linguagem de consulta estruturada)  ( sql )

Saída:

+------------------------+
| properties             |
+------------------------+
| ["age", "job", "name"] |
+------------------------+
1 row in set (0.00 sec)Linguagem de código:  SQL (linguagem de consulta estruturada)  ( sql )

2) Usando a função JSON_KEYS() com um caminho

Suponha que você tenha o seguinte documento JSON:

{
    "book": {
        "title": "The Great Gatsby",
        "author": {
            "name": "F. Scott Fitzgerald",
            "birth_year": 1896
        }
    }
}Linguagem de código:  SQL (linguagem de consulta estruturada)  ( sql )

Para extrair as chaves do objeto autor, use o seguinte caminho:

'$.book.author'Linguagem de código:  SQL (linguagem de consulta estruturada)  ( sql )

Por exemplo:

SELECT 
  JSON_KEYS(
    '{"book": {"title": "The Great Gatsby", "author": {"name": "F. Scott Fitzgerald", "birth_year": 1896}}}', 
    '$.book.author'
  ) author;Linguagem de código:  SQL (linguagem de consulta estruturada)  ( sql )

Saída:

+------------------------+
| author                 |
+------------------------+
| ["name", "birth_year"] |
+------------------------+
1 row in set (0.00 sec)Linguagem de código:  SQL (linguagem de consulta estruturada)  ( sql )

Resumo

  • Use a JSON_KEYS()função para recuperar os nomes das propriedades de um objeto JSON.

Deixe um comentário

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