Postgres permet :
UPDATE dummy
SET customer=subquery.customer,
address=subquery.address,
partn=subquery.partn
FROM (SELECT address_id, customer, address, partn
FROM /* big hairy SQL */ ...) AS subquery
WHERE dummy.address_id=subquery.address_id;
Cette syntaxe n'est pas du SQL standard, mais elle est beaucoup plus pratique pour ce type de requête que le SQL standard. Je crois qu'Oracle (au moins) accepte quelque chose de similaire.