Usa una colonna jsonb (non jsonb[]!) con la struttura come questa:
select
'[{
"adresse_line-1": "a11",
"adresse_line-2": "a12",
"postalcode": "code1"
},
{
"adresse_line-1": "a21",
"adresse_line-2": "a22",
"postalcode": "code2"
}
]'::jsonb;
Tuttavia, una tabella normale relativa a quella principale è un'opzione migliore.
Perché non jsonb[]? Dai un'occhiata alla definizione JSON:
JSON è costruito su due strutture:
- Una raccolta di coppie nome/valore. In vari linguaggi, questo viene realizzato come oggetto, record, struct, dizionario, tabella hash, elenco con chiavi o array associativo.
- Un elenco ordinato di valori. Nella maggior parte delle lingue, questo viene realizzato come un array , vettore, elenco o sequenza.
In una colonna jsonb puoi quindi memorizzare un array di oggetti. I tentativi di utilizzare l'array di jsonb sono probabilmente dovuti all'incomprensione di questo tipo di dati. Non ho mai visto una ragionevole necessità di una soluzione del genere.