MySQL错误:您可以';t指定目标表';用户用词';for update in FROM子句

MySQL错误:您可以';t指定目标表';用户用词';for update in FROM子句,mysql,sql,select,sql-update,Mysql,Sql,Select,Sql Update,请看一下我的MySQL子句 UPDATE `users_words` SET `priority` = (SELECT MAX(`priority`)+1 FROM `users_words`) where `userid` = 89 AND `wordid`="agree" 在这里,我将通过在现有的最大优先级字段值上添加1来更新优先级字段。但是我得到了错误您不能在FROM子句中指定更新的目标表“users\u words” 如何解决此问题?只需将子查询包装到另一个选择: UPDATE `us

请看一下我的MySQL子句

UPDATE `users_words` SET `priority` = (SELECT MAX(`priority`)+1 FROM `users_words`) where `userid` = 89 AND `wordid`="agree"
在这里,我将通过在现有的最大
优先级
字段值上添加1来更新
优先级
字段。但是我得到了错误
您不能在FROM子句中指定更新的目标表“users\u words”


如何解决此问题?

只需将子查询包装到另一个
选择

UPDATE `users_words` 
SET `priority` = (SELECT x.* FROM (SELECT MAX(`priority`)+1 FROM `users_words`) x) 
WHERE `userid` = 89 AND `wordid`="agree"

完美的把戏!令人惊叹的!