PHP / MYSQL组由不同的日期和用户计数

时间:2012-12-21 18:10:44

标签: php mysql group-by

我正在尝试围绕如何获取用户登录的明显天数,当db使用时间和日期戳(DATETIME列)存储每个登录会话时。 EG:

USERID | TIME | BOUGHT  
--------------------------
4 | 2012-07-16 04:44:52   | 3
4 | 2012-07-16 04:45:52   | 2  
5 | 2012-07-16 04:54:52   | 5
4 | 2012-07-18 04:44:52   | 3
4 | 2012-07-18 04:45:52   | 2  
4 | 2012-07-21 04:54:52   | 5

我想搜索用户4从网站购买的次数 - 并且查询应该返回3(因为用户4访问该网站总共3天)。我是否必须使用PHP / MYSQL组合,还是可以在SQL中使用它?

1 个答案:

答案 0 :(得分:3)

SELECT USERID, COUNT(DISTINCT DATE(TIME)) FROM my_table GROUP BY USERID

sqlfiddle上查看。