| From: | Rich Shepard <rshepard(at)appl-ecosys(dot)com> | 
|---|---|
| To: | pgsql-general(at)lists(dot)postgresql(dot)org | 
| Subject: | Re: Multiple tables row insertions from single psql input file | 
| Date: | 2024-06-10 20:11:14 | 
| Message-ID: | aedb755f-90a8-76ef-dcee-a62510c4bcf5@appl-ecosys.com | 
| Views: | Whole Thread | Raw Message | Download mbox | Resend email | 
| Thread: | |
| Lists: | pgsql-general | 
On Mon, 10 Jun 2024, Torsten Förtsch wrote:
> Something along these lines perhaps:
>
> =# create table a( id bigserial primary key, x text );
> CREATE TABLE
> =# create table b( fk bigint references a(id), y text );
> CREATE TABLE
> =# with ins_a as (insert into a (x) values ('a row') returning *)
>   insert into b(fk, y) select ins_a.id, 'yy'||i.i from ins_a cross join
> generate_series(1,10) as i(i);
> INSERT 0 10
> =# table a; table b;
> id |   x
> ----+-------
> 1 | a row
> (1 row)
>
> Time: 0.215 ms
> fk |  y
> ----+------
> 1 | yy1
> 1 | yy2
> 1 | yy3
> 1 | yy4
> 1 | yy5
> 1 | yy6
> 1 | yy7
> 1 | yy8
> 1 | yy9
> 1 | yy10
> (10 rows)
Torsten,
You answered my question. The tables are already created and I'll need to
insert new rows table-by-table as I've done before now.
Thanks,
Rich
| From | Date | Subject | |
|---|---|---|---|
| Next Message | Adrian Klaver | 2024-06-10 20:13:43 | Re: libpq v17 PQsocketPoll timeout is not granular enough | 
| Previous Message | Rich Shepard | 2024-06-10 20:06:13 | Re: Multiple tables row insertions from single psql input file |