Fórum SQL, como descobrir o numero ausente entre valores? #370915
01/06/2009
0
Preciso descobrir os códigos livres entre dois valores sem ter que percorrer o banco.
No meu banco tenho o campo NF.
Preciso descobrir quais notas não existem num valor entre 1 e 100 por exemplo:
1 - Nota Existente
2 - Nota Existente
4 - Nota Existente
O SQL teria que me retornar, nesse caso, que a NF nro 3 não consta no DB.
Tem como?
att
Mario
Aldus
Curtir tópico
+ 0Posts
01/06/2009
.lg.
http://forum.devmedia.com.br/viewtopic.php?t=100549
O meu código te retorna o numero que falta no intervalo. Dê uma lida que você vai entender.
Gostei + 0
01/06/2009
Aldus
ainda não seria isso que queria, pois dessa forma teria que ler o banco a procura do código inexistente, e isso dependendo do número de registro torna-se lento.
Gostei + 0
02/06/2009
.lg.
Está solução que lhe dei serve para quando vc abre uma tabela no seu programa... acredito que vc n va trazer um milhão de registros num dbgrid para o usuário, neh!? O usuário vai lhe xingar até....
A minha logica se aplica neste caso. Vc abre uma tabela no dbgrid... ( é claro que vc ja tratou o select para amenisar que tipo de info vc quer trazer ) e então quer adicionar um registro de acordo com essa informação que você pegou.
Esse meu código lhe traria o próximo incremento.
É claro que se vc quiser uma rotina que traga todos os itens faltando... essa lógica vai demorar. (a não ser se alguem tenha achado uma maneira rápida. Se achar também quero!!!) O jeito é fazer um procedimento que lhe mostra um progresso.
Desculpe se não pude lhe ajudar. A maneira que achei foi essa. Espero que alguem tenha essa solução. Se tiver, também vou querer. xD
Abraços,
.lg.
Gostei + 0
Clique aqui para fazer login e interagir na Comunidade :)