INSERT INTO table_test ( SELECT * FROM table_test where id = 1);
Dies funktioniert nicht, oder darf gar nicht funktionieren, wegen dem Unique Constraint auf id.
Ich bräuchte jetzt eine Möglichkeit mit der ich sagen kann
INSERT INTO table_test ( SELECT * OHNE ID FROM table_test where id = 1);
ODER
INSERT INTO table_test ( SELECT * FROM table_test where id = 1 AND nicht ID);
table_test.id fällt flach, weil ich über verschiedenen Tabellen gehe die ähnlich aufgebaut sind und ich einfach nicht alle table_test.spalten selektieren möchte mit einer Schleife.
Irgendwie wollte ich einen ein Zeiler.
So etwas halt wo ich sagen kann SELECT alle spalten nur nicht id FROM wäre toll.
INSERT INTO test
(
SELECT
( SELECT column_name FROM information_schema.columns WHERE table_name =‘test’ and column_name NOT LIKE ‘id’ )
FROM test where id = 1
);
Also selektiere alles außer id und mach ein INSERT INTO test
INSERT INTO test VALUES
( DEFAULT,
(
SELECT (
SELECT column_name FROM information_schema.columns WHERE table_name =‘test’ and column_name NOT LIKE ‘id’
)
FROM test where id = 1
)
);
Das Problem ist nun, dass ich den Result der column_name halt nicht an SELECT übertragen kann. Schade
Sowas ist IIRC im SQL nicht vorgesehen. Andererseits gilt es als guter Stil, in selects alle zu selektierenden Spalten anzugeben. Du verstehst, was ich meine?
So etwas halt wo ich sagen kann SELECT alle spalten nur nicht id FROM wäre toll. > >
[/quote]
Du könntest Dir in einer Funktion aus information_schema alle Spaltennamen holen, daraus ein dynamisches SQL basteln und das mit EXECUTE ausführen. Andererseits weiß ich nicht, für was man sowas braucht. Falls das Ziel ist, einfach nur eine bestimmte Anzahl gleicher Records in eine Tabelle einzufügen, wäre generate_series() vielleicht was für Dich, aber wie gesagt, ich weiß nicht, was Du willst.
Ich wollte auf die schnelle eine Zeile innerhalb der selben Tabelle kopieren und dem neuen Eintrag halt eine neue ID geben.Sonnst ginge es ja mit der INSERT INTO methode nicht.
Ich sehe, aber das ich ne PL/PGSQL proggen muss. Bin auch fast fertig damit.
Danke nochmal, an alle