Trovare record mancanti

di il
2 risposte

Trovare record mancanti

Buongiorno,
avrei gentilmente bisogno di trovare i record mancanti in un data base.
Il data base è organizzato come campo principale da data e ora.
Tutti i campi sono in sequenza con intervallo di 15 minuti, quindi ad esempio

15/05/2015 09:30:00
15/05/2015 09:45:00
15/05/2015 10:00:00
15/05/2015 10:15:00
15/05/2015 10:30:00
ecc. fino alle 15/05/2015 15:00:00 con intervallo di 15 minuti
poi 16/05/2015 09:30:00 fino alle 16/05/2015 15:00:00 con intervallo di 15 minuti
e così via per i giorni successivi

avrei quindi bisogno di sapere (magari in una matrice in vb6 o vbnet) i record mancanti dalle seguenze qualora ne mancasse uno.

Mille grazie

2 Risposte

  • Re: Trovare record mancanti

    Ciao,
    tu hai provato a fare qualcosa ?

    Devi generarti tutte le data-ora per tutte le date che ti interessano
    Se vuoi fare tutto in T-SQL puoi prendere spunto da qui
    prestando attenzione al commento "-- genero tutte le date comprese nell'intervallo"
    http://forum.masterdrive.it/blogs/sspintux/calcolo-in-t-sql-delle-ore-date-escludendo-sabati-domeniche-festivit-116/

    quindi devi mettere in left join tutte le date generate con la tua tabella con la condizione
    'where ... is null'

    HTH
  • Re: Trovare record mancanti

    Ciao, intanto grazie, proverò a lavorare sul codice del link.

    Io ho scritto una routine in vb6 che carica su una matrice il database Sql e tramite un ciclo
    passa i dati della matrice uno ad uno incrementanto di 15 minuti, quindi se non trova corrispondenza
    memorizza il dato mancante in una seconda matrice, e così via per tutto il db.
    Ovviamente se cominci ad avere 20000 dati ci impiega anche alcuni minuti, volevo sapere quindi se c'era un modo più veloce.

    Grazie
Devi accedere o registrarti per scrivere nel forum
2 risposte