查连续5天登陆的用户,sql怎么写

查连续5天登陆的用户,sql怎么写,第1张

新增用户登陆日志表(id、user_id、login_time、login_date)

用户表新增连续登陆天数字段(continuous_days);

用户每次登陆往登陆日志表insert记录,并且查看昨天是否有登陆记录,如果昨天登陆记录大于0,则连续登陆天数+1,否则将连续登陆天数置为0;

sql语句:select * from user where continuous_days >5

mysql如何查询两个日期之间最大的连续登录天数

你的日期字段存储类型是datetime吗,那就直接可以比较大小 比如去2014-10-28(时分秒省略)这一天的时间段 `date_time` >'2014-10-27 23:59:59' and `date_time` <'2014-10-29' 或者使用between 时间1 and 时间2也行

用一个变量存储最后登陆时间,倒叙遍历所有登陆时间,

if(last_time-time=1){//时间间隔等于一天表示连续登陆

i++

last_time=time

}

if(last_time-time>1){//时间间隔大于一天非连续登陆退出循环

break

}

if(last_time-time<1){//时间间隔小于1天表示一天多次登陆,忽略当前记录继续循环

continu

}

随便写一个伪代码,你想用过程实现也成,或者用前台方法从结果集中获取数据也成;


欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/sjk/10030408.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-05-04
下一篇 2023-05-04

发表评论

登录后才能评论

评论列表(0条)

保存