统计出在N分钟(10、20、30分钟等变量)内,访问次数超过5次的记录

披着虎皮的石头 2012-10-19 03:23:25
有一个日志表tab_1,字段:user_id和visit_datetime
表示登录人和登录时间。
记录:
1 2012-10-17 15:41:00
1 2012-10-17 15:42:00
2 2012-10-17 15:43:00
3 2012-10-17 15:44:00
4 2012-10-17 15:45:00
5 2012-10-17 15:46:00
6 2012-10-17 15:47:00
7 2012-10-17 15:48:00
8 2012-10-17 15:49:00

1 2012-10-17 15:50:00
2 2012-10-17 15:51:00
。。。

现在要统计出一些数据,每个登录人,在某一天内,如果在10(或20分钟、30分钟,是变量)分钟内,
访问次数超过5次的记录,统计出来。如结果:
1 2012-10-17 15:41:00
1 2012-10-17 15:42:00
1 2012-10-17 15:43:00
1 2012-10-17 15:44:00
1 2012-10-17 15:45:00
1 2012-10-17 15:50:00

2 2012-10-17 15:41:00
2 2012-10-17 15:42:00
。。。。。


我的思路是分为先对一天的时间分段:如:
2012-10-17 00:00:00 -2012-10-17 00:10:00
2012-10-17 00:10:00 -2012-10-17 00:20:00
2012-10-17 00:20:00 -2012-10-17 00:30:00
。。。
2012-10-17 23:50:00 -2012-10-17 23:59:99

然后用分组group的方法计算出来。

怎么写一个sql语句,求出结果。
...全文
219 2 打赏 收藏 转发到动态 举报
AI 作业
写回复
用AI写文章
2 条回复
切换为时间正序
请发表友善的回复…
发表回复
  • 打赏
  • 举报
回复
thk
ACMAIN_CHM 2012-10-19
  • 打赏
  • 举报
回复
select *
from 记录 a
where 5<=(select count(*) from 记录 where 登录人=a.登录人 and 登录时间 between a.登录时间 and a.登录时间+interval 5 minute);

56,875

社区成员

发帖
与我相关
我的任务
社区描述
MySQL相关内容讨论专区
社区管理员
  • MySQL
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧