2009-06-17 8 views
0

J'essaie de filtrer une base de données SQL.Comment faire une somme des visites avec une requête SQL?

Chaque ligne représente un utilisateur, la colonne principale sur laquelle je me concentre est intitulée last_visited et formatée en tant que ... 2009-06-17 12:15:32.

Combien d'utilisateurs ont visité le dernier jour/semaine/mois?

Comme dans:

SELECT COUNT(*) AS USERS_TODAY 
FROM parts_users 
Where updated_at > (NOW()-7) 

Répondre

5

Ainsi est le texte de la colonne ou un datetime? Si le premier:

SELECT COUNT(*) AS USERS_TODAY 
FROM parts_users 
WHERE CONVERT(datetime, updated_at, 120) > DATEADD(day, -7, GETDATE()) 

Si ce dernier, omettre le CONVERT.

Sinon, vous trouverez peut-être quelque chose comme cela utile:

SELECT CONVERT(datetime, LEFT(updated_at, 10), 120) AS DATE_ONLY, 
     COUNT(*) AS USERS_TODAY 
FROM parts_users 
WHERE CONVERT(datetime, updated_at, 120) > DATEADD(day, -7, GETDATE()) 
GROUP BY CONVERT(datetime, LEFT(updated_at, 10), 120) 
Questions connexes