Postgres'te böyle bir şey yapmaya çalışıyorum:
UPDATE table1 SET (col1, col2) = (SELECT col2, col3 FROM othertable WHERE othertable.col1 = 123);
INSERT INTO table1 (col1, col2) VALUES (SELECT col1, col2 FROM othertable)
Ancak, belgelerde belirtildiği gibi postgres 9.0 ile bile 1. nokta mümkün değildir ( http://www.postgresql.org/docs/9.0/static/sql-update.html )
Ayrıca 2. nokta çalışmıyor gibi görünüyor. Şu hatayı alıyorum: alt sorgu yalnızca bir sütun döndürmelidir.
Umarım birinin benim için bir çözümü vardır. aksi takdirde sorgular biraz zaman alacaktır :(.
Bilginize: Birkaç tablodan farklı sütunlar seçmeye ve bunları geçici bir tabloya kaydetmeye çalışıyorum, böylece başka bir uygulama hazırlanan verileri kolayca alabilir.