Ludwigmller
SQL-Guru
- Beiträge
- 168
Moin,
ich möchte für jedes Ergebnis eines SELECT-Statements einen INSERT in eine andere Tabelle ausführen.
Bsp:
Je id soll ein Eintrag in tab erzeugt werden.
Wie mache ich das am besten? Zu berücksichtigen ist auch, dass dieses bei neuen Einträgen in test aktualisiert werden soll, 'G1' bleibt nämlich konstant. Also entweder löscht man vorher alle Einträge mit 'G1', oder es wird tatsächlich aktualisiert. Es muss aber nicht automatisch bei einem INSERT erfolgen, es reicht, wenn es vor einen Zugriff auf tab erfolgt (frontend).
ich möchte für jedes Ergebnis eines SELECT-Statements einen INSERT in eine andere Tabelle ausführen.
Bsp:
Code:
postgres=# select id from test where value is not null;
id
----
1
4
5
6
7
8
10
11
12
(9 Zeilen)
Code:
INSERT INTO tab (fk_id, gruppe) VALUES (1, 'G1');
INSERT INTO tab (fk_id, gruppe) VALUES (4, 'G1');
Wie mache ich das am besten? Zu berücksichtigen ist auch, dass dieses bei neuen Einträgen in test aktualisiert werden soll, 'G1' bleibt nämlich konstant. Also entweder löscht man vorher alle Einträge mit 'G1', oder es wird tatsächlich aktualisiert. Es muss aber nicht automatisch bei einem INSERT erfolgen, es reicht, wenn es vor einen Zugriff auf tab erfolgt (frontend).