В БД имеется 3 столбца. Необходимо сдвинуть записи во 2 столбце на 1 строку.
set @x:=1;
update test_sql.a123 set `2` = (select `1` from (select `1`, `ind_date` from test_sql.a123) as `e` where `ind_date` = @x+1) where `ind_date` = (@x:=@x+1);
Однако результат работы смущает:
По какой-то причине могут игнорироваться итерации 1 и 2?
P.S.: Если изначально задавать set @x:=0, то итогом работы является все строки null, кроме 1й.
UPDATE a123 t1, a123 t2
SET t1.`2` = t2.`2`
WHERE t1.ind_date = t2.ind_date - 1
Довольно простой запрос, только мне ещё нужно получить дополнительное поле sub_count, которое берется при помощи COUNT(*) из другой таблицы