From: pgsql-general-owner@xxxxxxxxxxxxxx [mailto:pgsql-general-owner@xxxxxxxxxxxxxx]
On Behalf Of Pawel Veselov [skipped] This is where using sets becomes really tedious, as Postgres severely lacks an upsert-like statement. I don't think there are joins allowed in UPDATE statement, so I will need to use WITH query, right? Also, I'm not sure how LEFT JOIN will help me isolate and insert "missed" entries... Would it be OK to replace upsert part with merging into a temp table, then deleting and inserting from temp table? Is there any penalty for insert/delete comparing to update? [skipped] Yes, you can do UPDATE with joins (http://www.postgresql.org/docs/9.4/static/sql-update.html) like this: UPDATE table1 A SET col1 = B.col2 FROM table2 B WHERE A.col3 = B.col4; Regards, Igor Neyman |