Use uma coluna jsonb (não jsonb[]!) com a estrutura assim:
select
'[{
"adresse_line-1": "a11",
"adresse_line-2": "a12",
"postalcode": "code1"
},
{
"adresse_line-1": "a21",
"adresse_line-2": "a22",
"postalcode": "code2"
}
]'::jsonb;
No entanto, uma tabela regular relacionada à principal é uma opção melhor.
Por que não jsonb[]? Dê uma olhada na definição JSON:
JSON é construído em duas estruturas:
- Uma coleção de pares nome/valor. Em várias linguagens, isso é realizado como um objeto, registro, estrutura, dicionário, tabela de hash, lista de chaves ou matriz associativa.
- Uma lista ordenada de valores. Na maioria dos idiomas, isso é realizado como um array , vetor, lista ou sequência.
Em uma coluna jsonb você pode, portanto, armazenar uma matriz de objetos. As tentativas de usar o array de jsonb provavelmente se devem ao mal-entendido desse tipo de dados. Eu nunca vi uma necessidade razoável de tal solução.