Wie INSERT INTO-Tabelle mit mehreren Spalten aus dynamischer Abfrage?
Ähnlich zudiese vorherige Frage Für eine Eins-zu-Eins-Zuordnung benötige ich eine Lösung für mehrere Spalten in Quelle und Ziel.
ei der Arbeit mit Postgres 9.4.4 werden die Abfrage und das Schema wie folgt geändert:
Sagen wir, ich habe diese beiden TabellenTable1
undTable2
:
Create table Table1(col1 int, col2 varchar(100), col3 varchar(100));
Create table Table2(col1 int, col2 varchar(100), col3 varchar(100));
Es gibt noch einen TischTable3
Speichern einer Formel zum Migrieren von Daten ausTable1
zuTable2
:
CREATE TABLE Table3 (
tbl_src character varying(200),
col_src character varying(500),
tbl_des character varying(200),
col_des character varying(100),
condition character varying(500)
);
Insert into Table3(tbl_src, col_src, tbl_des, col_des, condition)
VALUES ('Table1','col1','Table2','col1', 'WHERE col1>=1')
, ('Table1','col2','Table2','col2', NULL)
, ('Table1','col3','Table2','col3', NULL);
Wie kompiliere ich diese Formel in einer dynamischen Abfrage und füge sie in die Zieltabelle ein?