用LIKE更新

时间:2012-05-22 11:36:39

标签: mysql

UPDATE jos_ezrealty

  SET jos_ezrealty.locid = p.id

,jos_ezrealty.locality = p.locality

,jos_ezrealty.owncoords = 1

FROM poblacion p

  WHERE jos_ezrealty.alias LIKE '%' || p.locality || '%'

它给了我:

#1064 - You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near 'FROM poblacion p WHERE jos_ezrealty.alias LIKE '%' || p.locality || '%'' at line 5

2 个答案:

答案 0 :(得分:2)

请阅读UPDATE syntax for MySQL

UPDATE jos_ezrealty AS e
  JOIN poblacion p
    ON e.alias LIKE '%' || p.locality || '%'
SET e.locid = p.id
  , e.locality = p.locality
  , e.owncoords = 1 ;

答案 1 :(得分:1)

应该是这样的:

UPDATE jos_ezrealty join poblacion 

SET jos_ezrealty.locid = p.id

,jos_ezrealty.locality = p.locality

,jos_ezrealty.owncoords = 1

WHERE jos_ezrealty.alias LIKE CONCAT('%', p.locality, '%');