No MySQL, o
JSON_PRETTY()
A função fornece impressão bonita de valores JSON. Ele retorna os valores JSON de uma maneira bem formatada, o que facilita a leitura para nós, humanos. Você fornece os valores JSON como um argumento para a função. A função então retorna esses valores formatados de acordo com suas regras de formatação.
Sintaxe
A sintaxe fica assim:
JSON_PRETTY(json_val)
Onde
json_val
é o valor JSON a ser formatado. Deve ser um valor JSON ou uma representação de string válida de um valor JSON. Se o valor não for um documento JSON ou se não puder ser analisado como um, a função falhará com um erro. Exemplo 1 – Uso básico
Aqui está um exemplo para demonstrar.
SELECT JSON_PRETTY('{"a": 1, "b": 2, "c": 3}') Result;
Resultado:
+----------------------------------+ | Result | +----------------------------------+ | { "a": 1, "b": 2, "c": 3 } | +----------------------------------+
A chave e o valor de um membro do objeto são separados por dois pontos seguidos por um espaço (‘
:
‘). Uma vírgula separando membros de objetos individuais é impressa antes da nova linha que separa os dois elementos ou membros.
Exemplo 2 – Matrizes
Cada elemento de matriz ou membro de objeto aparece em uma linha separada, recuada por um nível adicional em comparação com seu pai.
Uma vírgula separando elementos de matriz individuais é impressa antes da nova linha que separa os dois elementos ou membros (o mesmo que com objetos).
Aqui está um exemplo de formatação de um array.
SELECT JSON_PRETTY('[1, 2, 3]') Result;
Resultado:
+-------------------+ | Result | +-------------------+ | [ 1, 2, 3 ] | +-------------------+
Aqui está um exemplo de dois arrays, um aninhado dentro do outro.
SELECT JSON_PRETTY('[1, 2, [3, 4, 5]]') Result;
Resultado:
+-------------------------------------------+ | Result | +-------------------------------------------+ | [ 1, 2, [ 3, 4, 5 ] ] | +-------------------------------------------+
Exemplo 3 – Objetos e Arrays Vazios
Objetos e arrays vazios são impressos em uma única linha. Nenhum espaço é impresso entre a chave de abertura e fechamento.
SELECT JSON_PRETTY('[1, 2, [], {}]') Result;
Resultado:
+--------------------------+ | Result | +--------------------------+ | [ 1, 2, [], {} ] | +--------------------------+
Exemplo 4 – Espaço em branco
Espaços em branco estranhos e novas linhas presentes neste valor não têm efeito na saída.
SELECT JSON_PRETTY('[ 1 , 2 , 3]') Result;
Resultado:
+-------------------+ | Result | +-------------------+ | [ 1, 2, 3 ] | +-------------------+
Exemplo 5 – Recuos
Cada nível de recuo adiciona dois espaços à esquerda.
SET @data = '{"Person": {"Name": "Bart", "Age": 10, "Friends": ["Bart", "Milhouse"]}}'; SELECT JSON_PRETTY(@data) Result;
Resultado:
{ "Person": { "Age": 10, "Name": "Bart", "Friends": [ "Bart", "Milhouse" ] } }