- Home
- Categorie
- Coding e Sistemistica
- PHP
- Media oraria
-
Media oraria
Ciao a tutti,
sono alle prime armi con mysql e ho un problema sul quale ho la speranza che qui qualcuno sappia darmi un suggerimento.
Ho una tabella che chiamo stats con la seguente struttura:
ID = int
utenti = mediumint
stagione = smallint
settimana = smallint
data = date
time = time (hh:mm:ss)Con questa tabella raccolgo i dati di quanti utenti sono online un paio di volte all'ora.
Quello che voglio fare è ottenere la media oraria dei contatti. Per esempio la media dalle 9.00 alle 10.00.
Ho cominciato da questa query:SELECT ora, AVG(utenti) FROM user_stats GROUP BY ora
Il problema è che le ore sono inserite nel formato hh:mm:ss e vorrei fare in modo che GROUP BY agisca solo discriminando le ore e non considerando anche minuti e secondi. In questo modo mi creerebbe in automatico 24 gruppi corrispondenti alle ore.
Si può fare?
Grazie a tutti, Elaidon.
-
Scusate se rispondo a me stesso,
ma leggendo bene l'official reference manual di mysql ho trovato da solo la risposta alla mia domanda e la posto qui perchè magari potrebbe essere utile a qualche altro utente alle prime armi come me.
La query da usare nel caso esposto sopra per risolvere il problema è semplicissima:
SELECT HOUR(ora), AVG(utenti) FROM user_stats GROUP BY HOUR(ora)
Dove seleziono i record per la sola ***ora ***e li raggruppo per **ora **facendo la media utenti.
Grazie comunque a tutti, Elaidon.