Ricerca numero cronologico mancante

mercoledì 29 dicembre 2010 - 23.14
Tag Elenco Tags  VB.NET  |  .NET 3.5  |  Windows 7  |  Visual Studio 2008  |  SQL Server Express

jtpsala Profilo | Senior Member

Un saluto e tanti auguri a tutti gli utenti di questo Forum!

Vi espongo il mio quesito:
ho una tabella in SQl 2005 con i seguenti campi : Id (int) e Progressivo (numeric (18, 0));
nel campo Progressivo inserisco - non automaticamente - dei numeri cronologici da 1 all'infinito...
a volte capita di saltare qualche numero esempio 1, 2, 4, 5, 7, 8, 10...
Chiedo come posso eseguire una query in quella tabella che mi vada a ricercare i numeri mancanti (in questo caso 3, 6 e 9) e li mostri in una listbox della mia applicazione scritta in VB2008.

Ringrazio tutti in anticipo.

Pippo

freeteo Profilo | Guru

Ciao,
non credo sia semplice farlo con una query, perchè ad esempio potresti usare la funzione "row_number" di sql 2005 che torna comoda per farsi dare i nr della colonna.
Chiaramente però non puoi controllarli direttamente con quel campo, perchè nel momento in cui ne salti uno, poi anche i successivi sono sballati, a te interessa sapere i vari buchi...quindi dovresti lavorare sul dato un valore vedere se c'è il successivo.

Mi sa proprio che devi farlo a codice...

Ciao.

Matteo Raumer
[MCAD .net, MVP Visual C#]
http://blogs.dotnethell.it/freeteo

jtpsala Profilo | Senior Member

Grazie per avermi risposto...

infatti, per ovviare a questo problema, ho risolto gestendo tutto direttamente dall'applicazione (creando due array di dati, uno relativi ai numeri già usati e presenti nella tabella, l'altro invece numerato in progressivo senza buchi. A tal proposito faccio la comparazione dei valori presenti nei due array e quelli mancanti mi vengono notificati).
Grazie comunque per la cortese risposta.

Buon anno a tutti!

Pippo
Partecipa anche tu! Registrati!
Hai bisogno di aiuto ?
Perchè non ti registri subito?

Dopo esserti registrato potrai chiedere
aiuto sul nostro Forum oppure aiutare gli altri

Consulta le Stanze disponibili.

Registrati ora !
Copyright © dotNetHell.it 2002-2024
Running on Windows Server 2008 R2 Standard, SQL Server 2012 & ASP.NET 3.5