Sto cercando di fare qualcosa del genere in postgres:
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)
Ma il punto 1 non è possibile nemmeno con postgres 9.0 come menzionato nei documenti ( http://www.postgresql.org/docs/9.0/static/sql-update.html )
Anche il punto 2 sembra non funzionare. ricevo il seguente errore: la subquery deve restituire solo una colonna.
Spero che qualcuno abbia una soluzione alternativa per me. altrimenti le query richiederanno un sacco di tempo :(.
FYI: sto cercando di selezionare colonne diverse da diverse tabelle e memorizzarle in una tabella temporanea, in modo che un'altra applicazione possa facilmente recuperare i dati preparati.