В комманде ниже:
SET @var=1; UPDATE characters SET tmp = IF(isRadical=1, @var=1, @var:=@var+1);
Я ожидаю, что столбец @var
и tmp
будет сброшен до 1
, когда столбец isRadical=1
для строки, и будет увеличиваться в противном случае. Но вместо этого я получаю, что tmp
всегда увеличивается и никогда не сбрасывается на 1
, когда isRadical=1
, тогда tmp
устанавливается на 0
только для данной строки.
Что не так в этой команде?