So in the process of have to write hairy etl scripts I found myself have to write large update statements setting an old record with every field from a new record. This lead to long cookie cutter sql where you end up slitting your own wrists and that make nobody happy. I share this with the hopes that it might hlp someone and more importantly so i remember.
a.field1 = b.field1,
a.field2 = b.field2,
The trick i found was to use string replacements in VI. first you get the ddl/description of the table you are updating
use :%s/[ ]*|.*//g
to get the field name
next use :%s/^\(.*\)$/a.\1 = b.\1,/g