Además de esta respuesta, si necesita cambiar tableB.value según tableA.value de forma dinámica, puede hacerlo, por ejemplo:
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'