From: | Joel Burton <jburton(at)scw(dot)org> |
---|---|
To: | Renaud Thonnart <thonnart(at)amwdb(dot)u-strasbg(dot)fr> |
Cc: | "pgsql-general(at)postgresql(dot)org" <pgsql-general(at)postgresql(dot)org> |
Subject: | Re: multiple INSERT |
Date: | 2001-05-02 21:55:09 |
Message-ID: | Pine.LNX.4.21.0105021751540.21206-100000@olympus.scw.org |
Views: | Raw Message | Whole Thread | Download mbox | Resend email |
Thread: | |
Lists: | pgsql-general |
On Wed, 2 May 2001, Renaud Thonnart wrote:
> Hello everyone!
> I have readen in the doc of PostgreSQL that we can insert several tuples
> in a table at one time.
> But it is said that the tuples to insert must be the result of a SELECT.
>
> Could someone explain me what is the advantage of that technique ?
> Because if I have to build a temporary table before being able to
> perform multiple INSERT, I work 2 times more, isn't it ?
> Or perhaps does it exist a way to perform multiple insert without build
> a temporary table; something like :
> INSERT INTO table
> VALUES(...,...,...),
> VALUES(...,...,...);
> I really need your advice!
> Thank you all,
> Sincerelly, Renaud THONNART
Let's suppose you have the tables:
CREATE TABLE source (
id int,
f1 text );1
INSERT INTO source VALUES (1, 'foo');
INSERT INTO source VALUES (2, 'bar');
INSERT INTO source VALUES (3, 'snog');
CREATE TABLE second (
id int,
f1 text );
You can't insert several rows simultaneously into second by using INSERT
... VALUES. That is, you CANNOT:
INSERT INTO second VALUES ( 1, 'foo' ), (2, 'bar');
Some databases support this, but PostgreSQL doesn't yet.
What the INSERT piece means is that you *can* do this:
INSERT INTO second SELECT * FROM source;
... and all three records will be copied into the table "second".
HTH,
--
Joel Burton <jburton(at)scw(dot)org>
Director of Information Systems, Support Center of Washington
From | Date | Subject | |
---|---|---|---|
Next Message | David Scholes | 2001-05-02 21:57:02 | Tuple Max Size on 7.1 |
Previous Message | Joel Burton | 2001-05-02 21:50:37 | Re: DROP TABLE wildcard |