Zusätzlich zu dieser Antwort, wenn Sie tableB.value entsprechend tableA.value dynamisch ändern müssen, können Sie zum Beispiel Folgendes tun:
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'