mysql - SQL查询仅获取最近7天以来每天的访问者数量

标签 mysql sql

我有一个包含三列的数据库表 visitors:

id | Name | checkin_date               |
1  | Reg  | 2018-04-20T08:28:54.446Z   |
2  | Meg  | 2018-04-21T08:28:54.446Z   |
3  | Ted  | 2018-04-21T08:28:54.446Z   |
4  | Bin  | 2018-04-23T08:28:54.446Z   |

这样的记录有好几条。 我只想获取过去 7 天每天的记录数。现在我能够使用以下方法获取所有日期每天的访问者数量:

select count(id) as no_of_users
     , DATE_FORMAT(checkin_date, '%d %b, %Y') as date  
  from visitors  
 GROUP 
    BY DATE(checkin_date)

但这会显示所有记录中每天的用户数。如何获取最近7天的记录。

最佳答案

select count(id) as no_of_users, DATE_FORMAT(checkin_date, '%d %b, %Y') as date  from visitors  
where checkin_date >= DATE(NOW()) - INTERVAL 7 DAY
GROUP BY DATE(checkin_date)

在你想做日期字段的地方 >= 最近 7 天

关于mysql - SQL查询仅获取最近7天以来每天的访问者数量,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/51120955/

相关文章:

mysql - 在其间添加具有默认值的行

php - 使用 mysql 进行多个条件搜索的 sql 查询

mysql - 如何插入限制为 3 的数据库

sql - 自内连接 SQL 查询中缺少行

php - 插入之前检查一个键是否唯一,如果不唯一则创建另一个键

MySQl 计数按 4 列分组

php - 单个查询中的两个结果

mysql - 一张表没有行时加入

mysql - 错误类型 : ADODB. Recordset (0x800A0E79) 打开对象时不允许操作

SQL查询同时创建和插入表报错