Il primo argomento passato alla funzione pgsql json_populate_recordset
dovrebbe essere un tipo di riga. Se vuoi usare l'array json per popolare la tabella esistente anoop
puoi semplicemente passare la tabella anoop
come il tipo di riga in questo modo:
insert into anoop
select * from json_populate_recordset(null::anoop,
'[{"id":67272,"name":"EE_Quick_Changes_J_UTP.xlsx"},
{"id":67273,"name":"16167.txt"},
{"id":67274,"name":"EE_12_09_2013_Bcum_Searchall.png"}]');
Qui il null
è il valore predefinito da inserire nelle colonne della tabella non impostate nel json passato.
Se non hai una tabella esistente, devi creare un tipo di riga
per contenere i tuoi dati json (ad esempio i nomi delle colonne e i loro tipi) e passarli come primo parametro, come questo anoop_type
:
create TYPE anoop_type AS (id int, name varchar(100));
select * from json_populate_recordset(null :: anoop_type,
'[...]') --same as above