1093 - 您无法在FROM子句中为更新指定目标表'is_items'

时间:2015-04-03 00:04:29

标签: mysql mysql-error-1093

我正在尝试按顺序设置列'id'的值,但我的查询无效:

UPDATE is_items SET id=(SELECT max(id)+1 FROM is_items WHERE id<160)

错误:

[Err] 1093 - You can't specify target table 'is_items' for update in FROM clause

我看到其他人问同样的问题,但我无法理解解决方案......

提前致谢,

King Regards

1 个答案:

答案 0 :(得分:0)

您可以使用用户定义的变量分两步完成:

set @id := (SELECT max(id)+1 FROM is_items WHERE id<160);
UPDATE is_items SET id=@id;