PostgreSQL
 sql >> Base de Dados >  >> RDS >> PostgreSQL

Como transformar uma matriz json em linhas no postgres


Eu posto a resposta originalmente escrita por pozs na seção de comentários.

unnest() é para os tipos de array do PostgreSQL.

Em vez disso, uma das seguintes funções pode ser usada:
  • json_array_elements(json) (9.3+)
  • jsonb_array_elements(jsonb) (9.4+)
  • json[b]_array_elements_text(json[b]) (9.4+)

Exemplo :
select * from json_array_elements('[1,true, [2,false]]')

valor de saída
 -------------
 | 1         |
 -------------
 | true      |
 -------------
 | [2,false] |
 -------------

Aqui onde a documentação da v9.4 pode ser encontrada.