Em um objeto JSON multidimensional (um mapa com um mapa), quero extrair as chaves EN
e ES
(a linguagem) junto com as propriedades. Como isso é possível?
JSON:
{
"EN": {
"name": "name en",
"description": "description en"
},
"ES": {
"name": "name es",
"description": "description es"
}
}
Isso buscará cada mapa com a tradução, mas também quero recuperar a chave pai do mapa ( EN
e ES
)
SQL
SELECT jt.name, jt.description
FROM
payment_term p,
JSON_TABLE(
p.document_languages, '$.*' COLUMNS (
name TEXT PATH '$.name'
description TEXT PATH '$.description'
)
) as jt
WHERE p.id=31
Isto produzirá
name | description
------------------------------
name en | description en
name es | description es
Mas eu quero algo como
lang | name | description
------------------------------
en | name en | description en
es | name es | description es
Você pode usar
JSON_KEY_VALUE
para obter a chave:Saída: