Любая причина, по которой это будет возвращать строки:
select users.user_fullname,concat(persons.first_name,' ',persons.last_name)
from users, persons
where users.user_id = persons.user_id
and users.user_fullname = '0'
И все же это вызывает синтаксическую ошибку?
update users
set users.user_fullname = concat(persons.first_name,' ',persons.last_name)
from users, persons
where users.user_id = persons.user_id
and users.user_fullname = '0'