Re: copy row tree

Поиск
Список
Период
Сортировка
От Richard Huxton
Тема Re: copy row tree
Дата
Msg-id 45AE152A.5030501@archonet.com
обсуждение исходный текст
Ответ на copy row tree  ("Toni Casueps" <casueps@hotmail.com>)
Ответы Re: copy row tree  ("Merlin Moncure" <mmoncure@gmail.com>)
Список pgsql-general
Toni Casueps wrote:
>
> I have a set of tables with one-to-many relationships between them:
>
> T1 <-->> T2 <-->> T3 <-->> T4
>
> I need to copy some rows of these tables to another set of tables which
> have the same fields.

There's no shortcut.

BEGIN;
INSERT INTO copy_t1 SELECT * FROM t1 WHERE id IN (123, 456);
INSERT INTO copy_t2 SELECT * FROM t2 WHERE t2_t1_ref IN (SELECT id FROM
t1 WHERE id IN (123, 456));
INSERT INTO copy_t3 SELECT * FROM t3 WHERE t3_t2_ref IN (SELECT ... FROM
t2 WHERE ...)
...etc...
COMMIT;


--
   Richard Huxton
   Archonet Ltd

В списке pgsql-general по дате отправления:

Предыдущее
От: Richard Huxton
Дата:
Сообщение: Re: Controlling memory of session
Следующее
От: "Alexi Gen"
Дата:
Сообщение: Newbie questions (pg_global, tablespace, pg_temp, ...)