Re: INSERT... WHERE - Mailing list pgsql-general

From Abel Abraham Camarillo Ojeda
Subject Re: INSERT... WHERE
Date
Msg-id CAPD=2Nj9GcTAg6MFzYdQHBfUFbAY-TLaZDVx6LM1jam8dFpXdg@mail.gmail.com
Whole thread Raw
In response to Re: INSERT... WHERE  (Robert James <srobertjames@gmail.com>)
List pgsql-general
On Sun, Jan 13, 2013 at 10:37 PM, Robert James <srobertjames@gmail.com> wrote:
On 1/13/13, Ian Lawrence Barwick <barwick@gmail.com> wrote:
> 2013/1/14 Robert James <srobertjames@gmail.com>:
>> I have a lot of VALUES I want to INSERT.  But only a subset of them -
>> only those that meet a JOIN criteria involving another table.
>>
>> I could INSERT them into a temp table, and then do a SELECT INTO.  But
>> do I need to do that?  Is there any way to do a INSERT... VALUES ...
>> WHERE...
>
> INSERT INTO ... SELECT is what you are looking for.
>
> Simple example:
>
>   CREATE TABLE seltest (id INT);
>   INSERT INTO seltest (id) SELECT 1;


Thanks.  But how do I do that where I have many literals? Something like:

INSERT INTO seltest (id, a, b) SELECT (1,2,3),(4,5,6),(7,8,9) WHERE b
IN (SELECT ...)


--
Sent via pgsql-general mailing list (pgsql-general@postgresql.org)
To make changes to your subscription:
http://www.postgresql.org/mailpref/pgsql-general

insert into seltest (id, a, b) select a from (values (1, 2, 3), (4, 5, 6), ...) as t(a, b, c) join t2 on = ...;

pgsql-general by date:

Previous
From: Jeff Janes
Date:
Subject: Re: reducing number of ANDs speeds up query RESOLVED
Next
From: Darren Duncan
Date:
Subject: Re: INSERT... WHERE