Consulta de atualização do Oracle para atualizar registros em ordem sequencial
Tenho uma tabela no Oracle SQL cujos IDs estão em ordem crescente e sequencial, mas existem falhas nos IDs devido à edição, por exemplo os IDs são atualmente algo como
22
23
24
32
33
44
...etc
Verifico uma postagem e a solução fornecida foi a seguinte:
update (select t.*, row_number() over (order by id) as newid) toupdate
set id = newid
Solução fornecida anteriormente.
Agora minha consulta: 1) Acho que a "cláusula From" está ausente na consulta acima.
Consulta atualizada:
update (select t.*,
row_number() over (order by emp_id) as newid
from employee t ) toupdate
set emp_id = newid;
2) Quando executo a consulta acima, ocorre o erro "Operação de manipulação de dados não legal nesta exibição".
Alguém pode explicar como as soluções mencionadas funcionaram aqui. alguém pode postar a consulta de atualização completa. Obrigado.