You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

跨表更新字段时遭遇MySQL #1064语法错误求助

解决MySQL UPDATE JOIN的#1064语法错误

嘿,这个问题我太熟了!你遇到的是MySQL和其他数据库(比如SQL Server)在UPDATE JOIN语法上的差异问题——你写的是类似SQL Server的写法,但MySQL不认这种UPDATE ... FROM ...的格式,这就是触发#1064语法错误的根源。

你的错误写法(类似SQL Server风格)

UPDATE A 
SET A.pageviews = B.cntaccess 
FROM wp_popularpostsdata A 
INNER JOIN wp_top_ten B ON A.postid = B.postnumber

MySQL支持的正确写法

MySQL的UPDATE JOIN语法不需要FROM子句,而是直接把关联表放在UPDATE后面,调整后的代码如下:

UPDATE wp_popularpostsdata A
INNER JOIN wp_top_ten B ON A.postid = B.postnumber
SET A.pageviews = B.cntaccess;

额外排查小提示

  • 检查字段/表名拼写:你原错误提示里提到的postnumbe看起来少了最后一个字母r,确认一下wp_top_ten表的字段是不是postnumber,拼写错误也会触发语法或存在性错误。
  • 避免保留字冲突:如果你的表名或字段名是MySQL的保留字(比如order、user),需要用反引号`包裹,比如`wp_popularpostsdata`。

内容的提问来源于stack exchange,提问作者SeiyaJapon

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.05.21 04:18:23