使用 MySQL 的内连接更新查询:排除语法错误
执行以下 MySQL 更新查询时遇到语法错误:
UPDATE b SET b.mapx = g.latitude, b.mapy = g.longitude FROM business AS b INNER JOIN business_geocode g ON b.business_id = g.business_id WHERE (b.mapx = '' OR b.mapx = 0) AND g.latitude > 0
这是查询的修订版本,应该消除语法错误:
UPDATE business AS b INNER JOIN business_geocode AS g ON b.business_id = g.business_id SET b.mapx = g.latitude, b.mapy = g.longitude WHERE (b.mapx = '' OR b.mapx = 0) AND g.latitude > 0
评估
原始查询为业务表定义的表别名不正确;它应该在您的查询中为 b ,因为您在那里。这是唯一的语法问题。
附加注释
您的错误消息丢失。提供它将有助于查明问题的确切原因。此外,验证表中的字段类型(例如,mapx 和 mapy)是否与您尝试插入的数据匹配。
以上是为什么使用 INNER JOIN 的 MySQL UPDATE 查询会产生语法错误?的详细内容。更多信息请关注PHP中文网其他相关文章!