1

I have a users array of type User:

type User = {
  name: string
  surname: string
}

How do I insert in one go (in one query) all users?

Now i'm mapping over users and awaiting with Promise.all, but I guess there's a better way:

const promises = users.map(user => {
  return client.query(`
    INSERT INTO users (name, surname)
    VALUE ($1, $2);
  `, [user.name, user.surname])
})
await Promise.all(promises)

I've seen examples with hardcoded values inserting multiple elements but not with dynamic values.

INSERT INTO users (name, surname)
VALUES
  ('John', 'Doe'),
  ('Jane', 'Doe');
Mikel
  • 5,902
  • 5
  • 34
  • 49

0 Answers0