Mysql
 sql >> Base de Dados >  >> RDS >> Mysql

valor de incremento do mysql com base no registro anterior


Você escreveu uma consulta boa e inteligente para gerar esses números de linha, que evita uma solução confusa usando variáveis ​​de sessão. Para fazer a atualização, basta juntar sua tabela bomitems a esta consulta:
UPDATE bomitems t1
INNER JOIN
(
    SELECT
    t.ID,
    t.Parent,
    (SELECT COUNT(*) FROM bomitems AS x WHERE x.id <= t.id AND x.Parent = t.Parent) AS Counter
    FROM bomitems t
) t2
    ON t1.ID = t2.ID
SET t1.Counter = t2.Counter;

Eu testei esta consulta no meu MySQL Workbench local e parece estar funcionando.