• 欢迎访问搞代码网站,推荐使用最新版火狐浏览器和Chrome浏览器访问本网站!
  • 如果您觉得本站非常有看点,那么赶紧使用Ctrl+D 收藏搞代码吧

mysql函数范例-统计1周内未登陆的用户

mysql 搞代码 7年前 (2018-06-06) 199次浏览 已收录 0个评论

mysql函数实例-统计1周内未登陆的用户

流失用户统计(1周内未登陆的用户)。

 

CREATE FUNCTION `statics_user_unlogin_week`() RETURNS int(11)     COMMENT '流失用户统计(一周内未登录的用户)' BEGIN  #Routine body goes here...  DECLARE stopFlag INT DEFAULT 0 ;  DECLARE _shop_id INT(11) DEFAULT 0;  #餐厅id  DECLARE _device VARCHAR(50);   #手机设备号  DECLARE _a_token CHAR(64) DEFAULT '-1';  #与苹果服务器会话  DECLARE _s_token VARCHAR(64) DEFAULT NULL; #与点菜网服务器会话  DECLARE _lost_count INT(11) DEFAULT 0;  DECLARE _start_day date;  DECLARE _end_day date;    #统计1周前下线的用户数(1周内未登陆)  DECLARE cur1 CURSOR FOR SELECT id, device, a_token, s_token FROM visitor_user    WHERE DATEDIFF(NOW(), off_time) >= 8;     DECLARE CONTINUE HANDLER FOR NOT FOUND SET stopFlag=1;    OPEN cur1;    FETCH cur1 INTO _shop_id, _device, _a_token, _s_token;  WHILE  stopFlag = 0 do   INSERT INTO report_user_unlogin_week_detail(id, shop_id, device, a_token, s_token)     values (UUID(), _shop_id, _device, _a_token, _s_token);    FETCH cur1 INTO _shop_id, _device, _a_token, _s_token;  END WHILE;    #今天之前1周的第1天(例如: 2013-07-07)  SET _start_day = DATE_SUB(DATE_FORMAT(now(),'%Y-%m-%d'), INTERVAL 8 DAY);  #今天之前1周的最后1天(例如: 2013-07-13)  SET _end_day = DATE_SUB(DATE_FORMAT(now(),'%Y-%m-%d'), INTERVAL 1 DAY);   SELECT COUNT(device) into _lost_count FROM visitor_user WHERE DATEDIFF(NOW(), off_time) >= 8;   #统计1周内的未登陆的用户数  INSERT INTO report_user_unlogin_week(id, start_day, end_day, lost_count, type_client)    VALUES(UUID(), _start_day, _end_day, _lost_count, 0);    RETURN 1;  END

欢迎大家阅读mysql函数范例-统计1周内未登陆的用户》,跪求各位点评,by 搞代码

 


搞代码网(gaodaima.com)提供的所有资源部分来自互联网,如果有侵犯您的版权或其他权益,请说明详细缘由并提供版权或权益证明然后发送到邮箱[email protected],我们会在看到邮件的第一时间内为您处理,或直接联系QQ:872152909。本网站采用BY-NC-SA协议进行授权
转载请注明原文链接:mysql函数范例-统计1周内未登陆的用户
喜欢 (0)
[搞代码]
分享 (0)
发表我的评论
取消评论

表情 贴图 加粗 删除线 居中 斜体 签到

Hi,您需要填写昵称和邮箱!

  • 昵称 (必填)
  • 邮箱 (必填)
  • 网址