How do I insert multiple values into a postgres table at once? How do I insert multiple values into a postgres table at once? postgresql postgresql

How do I insert multiple values into a postgres table at once?


Multi-value insert syntax is:

insert into table values (1,1), (1,2), (1,3), (2,1);

But krokodilko's answer is much slicker.


Try:

INSERT INTO user_subservices(user_id, subservice_id) SELECT 1 id, xFROM    unnest(ARRAY[1,2,3,4,5,6,7,8,22,33]) x

Demo: http://www.sqlfiddle.com/#!15/9a006/1


A shorter version of krokodilko's answer:

insert into user_subservices(user_id, subservice_id) values(1, unnest(array[1, 2, 3]));