mysql - 一段时间内每个用户的 SQL 平均请求数

标签 mysql sql

我有一个包含以下字段的表(请求):

id, requestType, userEmail, date

我想找出给定时间段内(即上个月)每个用户的平均请求数。有什么建议吗?

谢谢! 格雷格

最佳答案

SUM 之类的功能会起作用。可能有点慢。

SELECT SUM(requestType) FROM Requests WHERE `userEmail` = `userEmail` and `date` BETWEEN `first-date YYYY-MM-DD` AND `second-date YYYY-MM-DD`;  

SQL SUM

如果您有很多请求,我还建议您每天为每个用户设置一行,并只更新该用户的请求总数。

编辑:如果您想要最近 30 天的信息,则类似此查询的内容应该有效。它在我的测试台上工作。

 SELECT SUM(requestType) FROM Requests WHERE `userEmail` = `userEmail` and `date`BETWEEN curdate() - INTERVAL 30 DAY AND curdate();

关于mysql - 一段时间内每个用户的 SQL 平均请求数,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/13277973/

相关文章:

mysql - 查找所有丢失的映射表条目

mysql - 如何从表格中选择日期范围内的值聚合

sql - 使用 Postgres 从每组中取出一个对象

sql - 如何查找不及格成绩的数量和共同平均数?

php - 在 codeigniter 中反向通配符搜索

mysql 命令行访问被拒绝错误 1045

mysql - 在 Doctrine2 中使用 SQL 中的 RAND() 函数

sql - 获取每组得分前 5 行

mysql - 更改 mySQL 数据库中特定行的时间字段

mysql - 跟踪在 SQL sybase 中选择的用户