@Makcimka

Как сделать вставку в таблицу Postgresql из массива объектов?

Дан массив с большим количеством объектов:

const arryTest = [
{
name: 'name1',
commens: 'commens1',
like: 2,
date: '01,01,2022'
},
{
name: 'name2',
commens: 'commens2',
like: 25,
date: '01,01,2022'
},
{
name: 'name3',
commens: 'commens3',
like: 35,
date: '01,01,2022'
},
]

В Mongodb я бы вставил это легко с помощью db.collection.insertMany(arryTest).
А в случае с PostgreSQL придется циклом воспользоваться?
Таблица имеет столбцы id, name, comments, date.
  • Вопрос задан
  • 303 просмотра
Пригласить эксперта
Ответы на вопрос 1
rozhnev
@rozhnev
Fullstack programmer, DBA, медленно, дорого
Функция: json_array_elements
create table comments (
        "name" varchar,
  	"commens" varchar,
  	"like" int,
  	"date" timestamp
);

insert into comments
select (json_populate_record(null::comments, value)).* from json_array_elements('[
{
    "name": "name1",
    "commens": "commens1",
    "like": 2,
    "date": "2022-01-01"
},{
    "name": "name2",
    "commens": "commens2",
    "like": 2,
    "date": "2022-01-01"
},{
    "name": "name3",
    "commens": "commens3",
    "like": 2,
    "date": "2022-01-01"
}
]');

select * from comments;


PostgreSQL fiddle
Ответ написан
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы