2009-10-27 4 views
5

J'ai une table contenant des enregistrements vue/clic. L'heure est stockée dans un horodatage Unix et je dois être en mesure de les retirer tous dans le mois/jour spécifique (basé sur des horodatages), mais plus important encore et la partie que je ne sais pas comment faire est de les regrouper par heure. Je dois être capable de le faire en une seule requête plutôt que de boucler chaque heure.Sélection et regroupement des lignes en résumé par heure

La base de données est MySQL, la langue est PHP.

Répondre

5
select hour(somedate), count(*) from yourtable group by hour(somedate) 

Si vous avez besoin tous les trois:

select month(somedate), day(somedate), hour(somedate), count(*) from yourtable group by month(somedate), day(somedate), hour(somedate) 
+0

Quand je lance la requête suivante: SELECT *, HEURE (timestamp) AS HEURE DE ad_view LIMIT 0, 30 Il retourne 838 comme l'heure, où il devrait être le nombre d'heures dans le jour en cours. – Webnet

+0

Désolé, le nombre d'heures dans le jour actuel (0-24) que l'horodatage est. – Webnet

+0

êtes-vous sûr que c'est vraiment un horodatage? est-ce un nombre entier d'horodatage stocké dans une colonne int ou quelque chose? –

Questions connexes