As funções JSON do PostgreSQL permitem que você armazene, consulte e manipule dados JSON em seu banco de dados. Eles são essenciais para lidar com tipos de dados JSON e realizar operações como extração, agregação e transformação.
Uso
As funções JSON são usadas quando você lida com dados JSON armazenados no PostgreSQL, permitindo a consulta e a manipulação eficientes desse tipo de dados semiestruturados. Eles facilitam operações como a recuperação de objetos JSON, o acesso a valores específicos e a realização de modificações.
Nesses exemplos, `->` é usado para extrair objetos JSON, `->>` recupera valores JSON como texto e `jsonb_set` atualiza dados JSON em um caminho especificado.
Diferença entre `json` e `jsonb`:
json: Armazena dados JSON como texto, preservando os espaços em branco e a ordem das chaves.
jsonb: Armazena dados JSON em um formato binário, oferecendo melhor desempenho e recursos de indexação. É por isso que o `jsonb` é geralmente preferido para a maioria dos casos de uso.
Exemplos
1. Extração de objeto JSON
SELECT data ->'name'AS name
FROM json_table;Tecnologia
Essa consulta extrai o objeto JSON associado à chave `name` de uma coluna `data` na `json_table`.
2. Acesso ao valor JSON como texto
SELECT data ->>'age'AS age
FROM json_table;Tecnologia
Aqui, o valor JSON de `age` é recuperado como texto, ideal para casos em que você precisa dos dados em formato de texto para processamento posterior.
3. Atualização de dados JSON
UPDATE json_table
SET data =jsonb_set(data,'{address, city}','"New York"')WHERE id =1;Tecnologia
Isso atualiza o campo `city` no objeto JSON `address` para "New York" em uma linha específica em que `id` é 1.
4. Manipulação de matrizes JSON
SELECTjsonb_array_elements(data ->'tags')AS tag
FROM json_table;Tecnologia
Essa consulta demonstra como lidar com matrizes JSON, extraindo cada elemento da matriz `tags` em um objeto JSON.
As funções JSON do PostgreSQL permitem que você armazene, consulte e manipule dados JSON em seu banco de dados. Eles são essenciais para lidar com tipos de dados JSON e realizar operações como extração, agregação e transformação.
Uso
As funções JSON são usadas quando você lida com dados JSON armazenados no PostgreSQL, permitindo a consulta e a manipulação eficientes desse tipo de dados semiestruturados. Eles facilitam operações como a recuperação de objetos JSON, o acesso a valores específicos e a realização de modificações.
Syntax
Nesses exemplos, `->` é usado para extrair objetos JSON, `->>` recupera valores JSON como texto e `jsonb_set` atualiza dados JSON em um caminho especificado.
Diferença entre `json` e `jsonb`:
json: Armazena dados JSON como texto, preservando os espaços em branco e a ordem das chaves.jsonb: Armazena dados JSON em um formato binário, oferecendo melhor desempenho e recursos de indexação. É por isso que o `jsonb` é geralmente preferido para a maioria dos casos de uso.Exemplos
1. Extração de objeto JSON
Essa consulta extrai o objeto JSON associado à chave `name` de uma coluna `data` na `json_table`.
2. Acesso ao valor JSON como texto
Aqui, o valor JSON de `age` é recuperado como texto, ideal para casos em que você precisa dos dados em formato de texto para processamento posterior.
3. Atualização de dados JSON
Isso atualiza o campo `city` no objeto JSON `address` para "New York" em uma linha específica em que `id` é 1.
4. Manipulação de matrizes JSON
Essa consulta demonstra como lidar com matrizes JSON, extraindo cada elemento da matriz `tags` em um objeto JSON.
5. Operações JSON
Este exemplo usa `jsonb_each` para expandir o objeto JSON em um conjunto de pares de valores-chave, útil para a iteração de dados.
Dicas e práticas recomendadas