当前位置: 首页 > news >正文

东莞网站平台费用哪个网站做logo赚钱

东莞网站平台费用,哪个网站做logo赚钱,ps网页设计案例,网站开发流程图和目录 一、连续登陆 1.1 连续登陆3天以上的用户 0 问题描述 1 数据准备 2 数据分析 3 小结 1.2 每个用户历史至今连续登录的最大天数 0 问题描述 1 数据准备 2 数据分析 3 小结 1.3 每个用户连续登录的最大天数(间断也算) 0 问题描述 1 数据准备 2 数据分析 3 小…目录 一、连续登陆 1.1 连续登陆3天以上的用户 0 问题描述 1 数据准备 2 数据分析 3 小结 1.2 每个用户历史至今连续登录的最大天数 0 问题描述 1 数据准备 2 数据分析 3 小结 1.3 每个用户连续登录的最大天数(间断也算) 0 问题描述 1 数据准备 2 数据分析 3 小结 一、连续登陆 1.1 连续登陆3天以上的用户 0 问题描述 查询连续登陆3天以上的用户字节面试题 1 数据准备 create table if not exists table1 (id int comment 用户id, date string comment用户登录时间);insert overwrite table table1 values (1,2019-01-01 19:28:00), (1,2019-01-02 19:53:00), (1,2019-01-03 22:00:00), (1,2019-01-05 20:55:00), (1,2019-01-06 21:58:00), (2,2019-02-01 19:25:00), (2,2019-02-02 21:00:00), (2,2019-02-04 22:05:00), (2,2019-02-05 20:59:00), (2,2019-02-06 19:05:00), (3,2019-03-04 21:05:00), (3,2019-03-05 19:10:00), (3,2019-03-06 19:55:00), (3,2019-03-07 21:05:00); 2 数据分析 selectdistinct id from (selectid,difffrom (selectid,date_sub(dt, row_number()over (partition by id order by dt)) difffrom ( --- 同一个用户一天可能登陆多次,所以,先去重selectid,date_format(date,yyyy-MM-dd) as dtfrom table1-- current_date() 获取当前的年月日where date_format(date,yyyy-MM-dd) between date_sub(current_date(),7) and current_date()group by id, date_format(date,yyyy-MM-dd)) tmp1) tmp2group by id, diffhaving count(1) 3) tmp3; 3 小结 “连续登陆”类型的解题思路 1计算 date_sub(login_date,row_number() over (user_id oder by  login_date)) diff; 2group by user_id,diff 分组 3count(1) 3天的用户就是连续登陆3天及以上的用户  1.2 每个用户历史至今连续登录的最大天数 0 问题描述 查询每个用户历史至今连续登录的最大天数 1 数据准备 create table if not exists table1 (id int comment 用户id, date string comment用户登录时间);insert overwrite table table1 values (1,2019-01-01 19:28:00), (1,2019-01-02 19:53:00), (1,2019-01-03 22:00:00), (1,2019-01-05 20:55:00), (1,2019-01-06 21:58:00), (2,2019-02-01 19:25:00), (2,2019-02-02 21:00:00), (2,2019-02-04 22:05:00), (2,2019-02-05 20:59:00), (2,2019-02-06 19:05:00), (3,2019-03-04 21:05:00), (3,2019-03-05 19:10:00), (3,2019-03-06 19:55:00), (3,2019-03-07 21:05:00); 2 数据分析 selectid,max(cnt) as days from (selectid,count(1) as cntfrom (selectid,date,date_sub(date, row_number() over (partition by id order by date)) difffrom (--用户在同一天可能登录多次需要去重selectid,date_format(date, yyyy-MM-dd) as datefrom table1group by id, date_format(date, yyyy-MM-dd)) tmp1) tmp2group by id, diff) tmp3 group by id; 3 小结 “连续登陆”类型的解题思路 1计算 date_sub(login_date,row_number() over (user_id oder by  login_date)) diff; 2group by user_id,diff 分组 3max(cnt)得到就是每个用户历史至今连续登陆的 最大天数。 1.3 每个用户连续登录的最大天数(间断也算) 0 问题描述 统计各用户最长的连续登录天数间断一天也算作连续。例如一个用户在1,3,5,6号登录则视为连续6天登录。 1 数据准备 create table if not exists table1 (id int comment 用户id, date string comment用户登录时间);insert overwrite table table1 values (1,2019-01-01 19:28:00), (1,2019-01-02 19:53:00), (1,2019-01-03 22:00:00), (1,2019-01-05 20:55:00), (1,2019-01-06 21:58:00), (2,2019-02-01 19:25:00), (2,2019-02-02 21:00:00), (2,2019-02-04 22:05:00), (2,2019-02-05 20:59:00), (2,2019-02-06 19:05:00), (3,2019-03-04 21:05:00), (3,2019-03-05 19:10:00), (3,2019-03-06 19:55:00), (3,2019-03-07 21:05:00); 2 数据分析 方式一间断的那一天构造array数组利用炸裂函数进行补全然后按照“用户连续登陆”的思路来做。 selectid,max(cnt) as days from (selectid,diff,count(1) as cntfrom (selectid,login_date,next_login_date,arr,new_login_date,date_sub(new_login_date, row_number() over (partition by id order by new_login_date)) difffrom (selectid,login_date,next_login_date,arr,new_login_datefrom (selectid,login_date,next_login_date,--间断的那一天构造array数组利用炸裂函数进行补全if(datediff(next_login_date, login_date) 2,array(login_date, date_add(login_date, 1)),array(login_date)) as arrfrom (selectid,login_date,--窗口函数 lead(向后取n行)--lead(column1,n,val)over(partition by column2 order by column3) 查询当前行的后边第n行数据如果没有就为nulllead(login_date, 1, 9999-12-31)over (partition by id order by login_date) next_login_datefrom (--用户在同一天可能登录多次需要去重selectid,date_format(date, yyyy-MM-dd) as login_datefrom table1group by id, date_format(date, yyyy-MM-dd)) tmp1) tmp2) tmp3lateral view explode(arr) tmp as new_login_date) tmp4) tmp5group by id, diff) tmp6 group by id; 方式二对用户多段stage的连续登陆进行划分,思路类似:会话划分 selectid,max(diff) as days from (selectid,stage,datediff(max(login_date), min(login_date)) 1 as difffrom (selectid,login_date,-- 思路类似会话划分字符串拼接得到stageconcat(id, -, sum(start_point)over (partition by id order by login_date rows between unbounded preceding and current row )) stagefrom (selectid,login_date,--间隔一天也算连续所以差值大于2的数据打上标签if(datediff(login_date, last_login_date) 2, 1, 0) start_pointfrom (selectid,login_date,--窗口函数 lag(向前取n行)--lag(column1,n,val)over(partition by column2 order by column3) 查询当前行的前边第n行数据如果没有就为nulllag(login_date, 1, 1970-01-01)over (partition by id order by login_date) as last_login_datefrom (selectid,date_format(date, yyyy-MM-dd) as login_datefrom table1group by id, date_format(date, yyyy-MM-dd)) tmp1) tmp2) tmp3) tmp4group by id, stage) tmp5 group by id; 3 小结 “间断连续”类型的解题思路 1构造array数组 2炸裂函数 侧写视图 lateral view explode将一行变多行补全间断的那几天 3补全后之后就按照“连续登陆”的情景进行处理 计算 date_sub(login_date,row_number() over (user_id oder by  login_date)) diff;group by user_id,diff 分组max(cnt)得到就是每个用户历史至今连续登陆的最大天数。
http://www.hkea.cn/news/14342488/

相关文章:

  • 专业的单位网站开发公司展示型网站企业网站建设
  • 汕头市做网站优化市场营销策划案
  • 网站企业备案需要哪些数字营销专业大学排名
  • 台州网站排名优化二进制可以做网站是吗
  • 义乌外贸网站开发做的网站进不去后台
  • 江西网站备案流程济南易搜的网站建设
  • 有哪些网站做的好新民电商网站建设程序
  • 程家桥街道网站建设如何让自己的网站快速被百度收录
  • 常州网站建设公司推荐做家教需要什么哪个网站的会员
  • 网站介绍页面东营破产信息网官网
  • dede做英文网站优化学前端什么网站好
  • 安陆做网站公司网络营销推广的八大核心
  • wordpress中home pageseo关键词有话要多少钱
  • 网站关键词排名优化应该怎么做淘宝的网站开发历史及难度
  • 重点实验室网站建设方案gulf oil wordpress
  • 重庆网站建设慕枫开福区城乡建设局网站
  • 清远市住房和城乡建设局门户网站wordpress字不能
  • 建设淘宝网站的目的网站建设 淘宝客末班
  • 免费发布出租房信息网站工行网站跟建设网站区别
  • 做新媒体每天必看的网站郴州网络推广公司排名
  • 360推广登录入口电商网站 内容优化
  • 管理系统网站模板浙江建站
  • 上海市建设工程咨询行业协会企业网站建设中图片优化的方法
  • 网页设计网站wordpress 菜单间隔
  • 微网站如何做微信支付wordpress全站pjax
  • 网站设计语言有哪些长春建站企业
  • 乐山北京网站建设淮南电商网站建设
  • 做外包任务网站北京工商登记
  • 工信部网站备案管理系统本地服务类网站成本
  • 电子商务包括哪些专业广东百度seo