For those wanting to do a JOIN that updates ONLY the rows your join returns use:
UPDATE aSET price = b_alias.unit_priceFROM a AS a_aliasLEFT JOIN b AS b_alias ON a_alias.b_fk = b_alias.idWHERE a_alias.unit_name LIKE 'some_value'AND a.id = a_alias.id--the below line is critical for updating ONLY joined rowsAND a.pk_id = a_alias.pk_id;
This was mentioned above but only through a comment..Since it's critical to getting the correct result posting NEW answer that Works