UPDATE SQL incremental

15/03/2017

0

SQL

Boa noite srs.
Sou totalmente inciante na linguagem SQL eu preciso de um código que corrija a seguinte situação abaixo:
Conforme demonstrado abaixo na Tabela 1 abaixo eu tenho no meu banco uma coluna com nome de NoItem que se refere a numeração dos itens de uma Nota Fiscal, e NoNf que se refere ao numero da Nota Fiscal, então se observarem a numeração da Nota Fiscal pode se repetir, porem a numeração dos itens não podem se repetir e nem estar fora de ordem (sequência), então como demonstrei na Tabela 1, o meu banco ta todo bagunçado eu peguei estas três Notas Fiscais como exemplo é possível observar que para algumas Notas Fiscais existem numeração de itens fora da sequencia e até mesmo itens duplicados, eu preciso corrigir isto para que as informações fiquem organizadas (colocando os itens em ordem crescente começando do nº 1 e sem duplicidade) semelhante ao demonstrado na Tabela 2.
Talvez um comando UPDATE ou uma PROCEDURE resolva o meu problema, alguém que saiba resolver o problema poderia me ajudar por favor.

Tabela 1 (Errado) Tabela 2 (Correto)
Nº do item (NoItem) Nº NFE(NoNf) Nº do item (NoItem) Nº NFE(NoNf)
1 279 1 279
4 279 2 279
3 279 3 279

1 51807 1 51807
7 51807 2 51807
6 51807 3 51807
4 51807 4 51807
9 51807 5 51807
6 51807 6 51807
7 51807 7 51807

2 51808 1 51808
1 51808 2 51808
3 51808 3 51808


Desde já agradeço.
Claudinei
Claudinei

Claudinei

Responder

Posts

15/03/2017

Luiz Santos

Claudinei, boa noite.

Para o banco de dados, é indiferente a ordem.
O importante é a chave da tabela estar sendo respeitada.

Se o que você quer é apenas exibir os dados de forma ordenada, basta usar um ORDER BY.

Agora se quiser mesmo fazer a alteração, a forma mais certa é criando uma nova tabela, fazer um INSERT nela com uma consulta, ordenada da forma que você precisa, e por ultimo, voltar os dados para a tabela de origem.

Lembrando de tomar cuidado com as chaves e relacionamentos que seu modelo possui.

Espero ter ajudado.

Grande abraço
Responder

16/03/2017

Riv3566

https://technet.microsoft.com/en-us/library/ms133905(v=sql.105).aspx
Responder

Assista grátis a nossa aula inaugural

Assitir aula

Saiba por que programar é uma questão de
sobrevivência e como aprender sem riscos

Assistir agora

Utilizamos cookies para fornecer uma melhor experiência para nossos usuários, consulte nossa política de privacidade.

Aceitar