你正在搭建一个用户活跃度的画像,其中一个与活跃度相关的特征是“最长连续登录天数”, 请用SQL实现“2023年1月1日-2023年1月31日用户最长的连续登录天数”
区块链毕设网qklbishe.com为您提供问题的解答
你正在搭建一个用户活跃度的画像,其中一个与活跃度相关的特征是“最长连续登录天数”, 请用SQL实现“2023年1月1日-2023年1月31日用户最长的连续登录天数”
MySQL用户变量编程
with t1 as ( select * from tb_dau where date_format(fdate,"%Y-%m")="2023-01" ) , t2 AS ( SELECT #------------只需要修改里面的逻辑就行。注意语句是“顺序执行”的------------------------------- user_id, fdate, (case when date(fdate) = date(@prev_date) + INTERVAL 1 DAY AND user_id = @prev_user_id then @consec_days := @consec_days + 1 when fdate = @prev_date AND user_id = @prev_user_id then @consec_days := @consec_days else @consec_days := 1 end) AS consec_days, @prev_date := fdate, @prev_user_id := user_id #-------------只需要修改里面的逻辑就行。注意语句是“顺序执行”的------------------------------ FROM (SELECT @prev_date := NULL, @prev_user_id := NULL, @consec_days := 1) vars, (SELECT fdate, user_id FROM t1 ORDER BY user_id , fdate) ordered_dates ) select user_id, max(CAST(consec_days AS UNSIGNED)) as max_consec_days from t2 group by user_id order by user_id
20:19
以上就是关于问题你正在搭建一个用户活跃度的画像,其中一个与活跃度相关的特征是“最长连续登录天数”, 请用SQL实现“2023年1月1日-2023年1月31日用户最长的连续登录天数”的答案
欢迎关注区块链毕设网-
专业区块链毕业设计成品源码,定制。
区块链NFT链游项目方科学家脚本开发培训