使用MySQL计算大多数用户在线
发布时间:2020-05-23 17:50:46 所属栏目:MySql 来源:互联网
导读:我有一个表,用于捕获用户登录和注销时间(他们登录的应用程序是VB,它与MySQL服务器通信).该表看起来像示例:idLoginLog | username | Time | Type | -------------------------------------------------------- 1
|
我有一个表,用于捕获用户登录和注销时间(他们登录的应用程序是VB,它与MySQL服务器通信).该表看起来像示例:
因此,每次用户登录时,都会使用用户名和时间戳向表中添加新行.用于登录的类型为“1”.当他们注销时,只发生类型为“0”. 如果用户强制退出应用程序,则会出现轻微的问题,即用户似乎没有注销,因为这显然会绕过提交注销查询的过程(键入“0”).但请忽略这一点,并假设我找到了解决该问题的方法. 我想知道什么查询(我将每周运行一次)来计算任何时候登录的最多用户.这甚至可能吗?对我来说,这似乎是一个巨大的数学/ SQL挑战!该表目前有大约30k行. 哇!谢谢你们!我已经调整了mifeet对最短代码的回答,这些代码可以完成我需要的工作.不敢相信我能用这个代码完成它,我想我必须暴力或重新设计我的数据库!
最佳答案
您可以使用MySQL变量来计算当前登录访问者的运行总和,然后获得最大值:
(SQL Fiddle) 编辑:我还建议如何处理未明确注销的用户.假设您认为用户在30分钟后自动退出:
(Fiddle) (编辑:安卓应用网) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |
相关内容
- 如何从mysql表中选择Range of Ranges?
- php – Laravel中的所有SQL运算符是什么?
- MySql like 查询 变向写法(不用like 完成like查询)
- Mysql实例master and slave have equal MySQL server ids
- mysql – 在列名中使用保留字
- Mysql入门MySQL数据库维护中监控所用到的常用命令
- sql – 我应该使用什么类型的数据结构来模仿文件系统?
- java – JOIN中的相同列名在ResultSet中出现“找不到列”错
- Mysql实例mysql not in、left join、IS NULL、NOT EXISTS 效
- php – 无法使用函数返回值
