Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/mysql/68.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
MYSQL设置变量-使用指定范围内的数字更新记录_Mysql_Variables_Set_Sequence - Fatal编程技术网

MYSQL设置变量-使用指定范围内的数字更新记录

MYSQL设置变量-使用指定范围内的数字更新记录,mysql,variables,set,sequence,Mysql,Variables,Set,Sequence,我的MYSQL语句似乎不起作用。我经常使用这段代码来更新表中的组顺序 但出于某种原因,运行此命令只会将“mach_group”字段的所有记录更改为NULL。它应该做的是在标准范围内用1到11之间的数字更新“mach_group” 你们谁能看出哪里出了问题 SET @grp:=-1; UPDATE mailing_new SET `mach_group`=(@grp:=(@grp+1)%11)+1 WHERE machinery='1'

我的MYSQL语句似乎不起作用。我经常使用这段代码来更新表中的组顺序

但出于某种原因,运行此命令只会将“mach_group”字段的所有记录更改为NULL。它应该做的是在标准范围内用1到11之间的数字更新“mach_group”

你们谁能看出哪里出了问题

SET         @grp:=-1;
UPDATE      mailing_new 
SET         `mach_group`=(@grp:=(@grp+1)%11)+1 
WHERE       machinery='1' 
AND         w='1' 
AND         (nw='1' or sw='1')
ORDER BY    zip ASC