参考:https://blog.csdn.net/ganghaodream/article/details/100083543 SQL计算最长登录天数 计算最长登陆天数主要用两个函数:1.窗口函数row_number()over() 2.date_sub() 1.使用row_number ...
最近有个需求,计算用户连续登录的最大天数 这里使用prestoSql,使用hive也可以 ,先看下登录日志数据表hive.traffic.access user只有两个字段:uid,day 日期辅助表hive.ods.dim date,这个表只有一个字段day 先说下思路, uid day rownumber day rownumber days 从上可以看到,只要是连续登录的话,day rown ...
2020-04-13 08:20 0 741 推荐指数:
参考:https://blog.csdn.net/ganghaodream/article/details/100083543 SQL计算最长登录天数 计算最长登陆天数主要用两个函数:1.窗口函数row_number()over() 2.date_sub() 1.使用row_number ...
刚刚写了一个签到计算天数的sql, 记录下来. 思路如下: 获取当前签到的最后时间(今天或昨天), 定义一个变量@i 对签到时间进行天数自减, 然后查询出当前记录签到时间是否与自减后的时间匹配. 如果匹配表示天数是连续时间. SELECT count(1)FROM ( SELECT ...
有一个用户登录流水表结构如下: 这样给它充值: 然后我们观察这些记录: 可以发现,A001用户从2020-1-1~2020-1-3连续登录了三天,从2020-01-05~2020-01-06连续登录了两天; B001用户从2020-1-1-2020-1-2 ...
给定Log表,查询各用户最长连续登录天数。 解题思路:1,给各用户的登录日期组内排序。用窗口函数ROW_NUMBER实现。 2,因为row_number是连续的,所以如果login_time-row_number是恒定的,说明用户 ...
4. 第四步:求最大次数 三、扩展(股票最大涨停天数) ...
例:测试数据如下表(user_login_table) 注:对于工作日(上周五和下周一也界定为连续),则方法二适用 实现思路一: 1、使用开窗函数row_number() 对每个user_id 的登陆日期进行排序,得到排名rn 2、然后用login_date减去排名 ...
以下为例子数据 图1 图1 首先根据要求取出BeforeMeal要在7.0以下 并且 bingAfterMe ...