I have two tables, both looking like
id name value
1 Joe 22
2 Derk 30
In addition to this answer if you need to change t1.value according to t2.value dynamically you can do for example:
UPDATE tableB INNER JOIN tableA ON tableB.name = tableA.name SET tableB.value = IF(tableA.value > 0, tableA.value, tableB.value) WHERE tableA.name = 'Joe'