求统计活跃用户数sql

shadowcats 2009-05-20 09:59:16
比如把每周登陆一次作为定义活跃用户的条件,请问如何写sql统计网站现在的活跃用户数呢?

* 表中并不会记录用户每次的登录时间

请指点,万分感谢!^_^
...全文
564 10 打赏 收藏 转发到动态 举报
写回复
用AI写文章
10 条回复
切换为时间正序
请发表友善的回复…
发表回复
APOLLO_TS 2009-05-21
  • 打赏
  • 举报
回复
门都没有!

使用临时表吧!
wwwwb 2009-05-21
  • 打赏
  • 举报
回复
条件:每周登陆一次 :需要建立一个星期对照表,记录
每周的起、结束日期,如果登录日期在之内,则加1,统计
总数
梦无痕123 2009-05-21
  • 打赏
  • 举报
回复
gz
ACMAIN_CHM 2009-05-21
  • 打赏
  • 举报
回复


Discuz! 论坛 一样算了,以发贴,回复 为做为活跃的标准。
WWWWA 2009-05-21
  • 打赏
  • 举报
回复
条件:每周登陆一次:
可以考虑建立一年每周的起、结束日期,判断登陆日期是否在其中
ACMAIN_CHM 2009-05-20
  • 打赏
  • 举报
回复

Discuz! 的论坛很简单,根据用户的发贴,回贴情况。有一张发贴的表及回贴的表。

shadowcats 2009-05-20
  • 打赏
  • 举报
回复
恩 是 如果有这样一张表确实一切就迎刃而解了。
但这样的话这张“用户登录记录表”表会非常庞大,并发也会很多,很快就需要考虑针对这张表的优化了吧?
现在的sns网站都是这样做的吗?我不太了解
ACMAIN_CHM 2009-05-20
  • 打赏
  • 举报
回复

如果只是这样的表当然不行。
用户信息表 A (id,user_name,last_login_time,last_ip)

应该还有一张用户的登录记录表。其中记录着每次登录的时间和操作日志。
shadowcats 2009-05-20
  • 打赏
  • 举报
回复
我简单写出表结构吧

用户信息表 A (id,user_name,last_login_time,last_ip)
* user_name 唯一

id user_name last_login_time last_ip
1 u1 09.01.10 255.255.0.0
2 u2 08.01.10 255.255.0.0
3 u3 09.05.20 255.255.0.0
4 u4 09.05.10 255.255.0.0
5 u5 09.04.26 255.255.0.0
6 u6 09.05.11 255.255.0.0
......

求:其中那些是活跃用户
条件:每周登陆一次

我很疑惑的就是这样能通过表里的数据求出网站活跃用户吗?
如果不行,个个网站都是怎么评判自己活跃用户数的呢?

ACMAIN_CHM 2009-05-20
  • 打赏
  • 举报
回复

给出表结构和数据。以及正确结果比如

现有表 A (id,col1,col2);
id col1 col2
1 A K
2 B M
5 B T
7 E B

求 id=2 的记录 的SQL语句如何写。
id col1 col2
2 B M


56,677

社区成员

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

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