@ ответ stickybit может работать просто отлично, но я подумал, что дам альтернативу, используя JOIN , потому что он более эффективен, чем подзапрос, и BETWEEN , потому что он делает синтаксис aнемного проще:
UPDATE table1
JOIN table2
ON table1.id = table2.pid
SET table1.name = table2.name
WHERE table1.id BETWEEN 3 AND 9;