mysql更新查询抛出语法错误

时间:2016-05-02 08:42:52

标签: mysql sql-update syntax-error

我正在尝试更新用户信息(电话号码),但是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 附近的语法中抛出错误而不更新值。 如何解决此语法错误并更新信息?

1 个答案:

答案 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%'