Visualizzazione dei risultati da 1 a 3 su 3
  1. #1

    [MySQL] Query con record ad intervallo

    Salve a tutti.
    Chiedo se e' possibile effettuare una query facendomi
    restutuire dei record ad intervalli.
    Un esempio forse chiarisce meglio
    In una tabella vengono memorizzati valori ogni secondo
    codice:
    ID Ora                   Valore
     1 2005-12-11 20:05:00   1000
     2 2005-12-11 20:05:01   1010
     3 2005-12-11 20:05:02   1080
     4 2005-12-11 20:05:03   1030
     5 2005-12-11 20:05:04    980
     6 2005-12-11 20:05:05   1060
     7 2005-12-11 20:05:06   1040
    etc...
    Se voglio visualizzare i valori con un intervallo di 1 secondo
    mi basterebbe prendere tutti i record
    codice:
    SELECT Ora, Valore FROM Tabella ORDER BY Ora ASC
    Ma se volessi far scegliere all'utente con quale intervallo visualizzare i valori
    (es. ogni 2 secondi, 5 secondi, 10 secondi, 30 secondi),
    e' possibile fare una query tipo
    codice:
    SELECT Ora, Valore FROM Tabella WHERE Ora (Intervallo 2 secondi) ORDER BY Ora ASC
    restituendomi cosi' i 4 record con ID 1,3,5,7 ?
    Oppure se scelgo 5 secondi mi dovrebbe restituire solo i record con ID 1 e 6 ?
    Grazie per una eventuale risposta,
    Saluti

  2. #2
    Utente di HTML.it L'avatar di luca200
    Registrato dal
    Apr 2002
    Messaggi
    4,120
    Due domande

    1) come fai a determinare quale deve essere il primo record?
    2) che versione usi di mysql?

  3. #3
    potresti convertire la data in secondi (unix timestamp) e poi
    where (secondi % $intervallo) = 0

    oppure meglio ancora potresti attendere la risposta di luca che è un mago di mysql

Permessi di invio

  • Non puoi inserire discussioni
  • Non puoi inserire repliche
  • Non puoi inserire allegati
  • Non puoi modificare i tuoi messaggi
  •  
Powered by vBulletin® Version 4.2.1
Copyright © 2025 vBulletin Solutions, Inc. All rights reserved.