我正在尝试更新用户信息(电话号码),但是mysql显示语法错误。
以下是显示所有数据(电话号码)
的查询select distinct a.phone
from users u
join updated_phone a on a.phone like concat(u.phone_no, '%')
where u.phone_no like '88%'
此查询正常。
以下是更新用户表中电话号码的查询
UPDATE u
SET u.phone_no=a.phone
FROM updated_phone as a
JOIN users as u
on a.phone like concat(u.phone_no, '%')
where u.phone_no like '88%'
但是此更新查询在 FROM 附近的语法中抛出错误而不更新值。 如何解决此语法错误并更新信息?
答案 0 :(得分:1)
你不应该在更新中使用,因为更新表已在UPDATE子句中定义
UPDATE users as u
JOIN updated_phone as a on a.phone like 'u.phone_no%'
SET u.phone_no= a.phone
where u.phone_no like '88%'