我想做的是:
UPDATE table SET field = MAX(field) + 1 WHERE id IN (1, 3, 5, 6, 8);
在我看来,这个语句的语义首先是数据库会关闭并为我确定field
所有table
. 然后它将对该值加 1,并将结果值分配给field
具有 1、3、5、6 和 8 的行的列id
。看起来很简单......
但是,当我尝试运行该查询时,MySQL 会窒息并说:
ERROR 1111 (HY000): Invalid use of group function
为了得到我想要的结果,你必须使用什么秘方?
问候,维克