我怎样才能看到一个人每月来多少次(SQL)

时间:2017-04-20 08:27:27

标签: mysql sql timestamp datediff

对于我的系统,我想知道访客来我店的次数。我有wifi传感器,他们收到了很多地址,我想知道访客一个月来的次数

This is the database I use (time is in unix time and get fixed with FROM_UnixTime(sensordata1.time)

所以我想得到的是一个上个月访问次数的地址。(每天不是每个地址所以如果他每天来5次就把它算作1)

1 个答案:

答案 0 :(得分:0)

您想要查看2017年3月。因此,请在WHERE子句中将结果限制为2017年3月。您希望每个访问者(地址)有一个结果行。所以GROUP BY地址。你想每天计算一次。所以COUNT DISTINCT天。

select 
  address,
  count(distinct from_unixtime(sensordata1.time, '%Y-%m-%d'))
from sensordata1 
where from_unixtime(sensordata1.time, '%Y-%m') = '2017-03'
group by address;

如果你想要这个更灵活,即总是在执行查询的最后一个月而不是2017-03修复,那么今天找到,减去一个月,然后拿这个月。