Prueba esto:
UPDATE table1
SET a = t2.a, b = t2.b, .......
FROM table2 t2
WHERE table1.id = t2.id
Eso debería funcionar en la mayoría de los dialectos de SQL, excepto Oracle.
Y sí, es mucho escribir, es la forma en que SQL hace esto.
Prueba esto:
UPDATE table1
SET a = t2.a, b = t2.b, .......
FROM table2 t2
WHERE table1.id = t2.id
Eso debería funcionar en la mayoría de los dialectos de SQL, excepto Oracle.
Y sí, es mucho escribir, es la forma en que SQL hace esto.