流失用户统计(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查询一个月未登录_mysql函数实例-统计1周内未登陆的用户相关推荐

  1. mysql 查询一个月的时间_mysql日期查询sql语句总结(查询一天,查询一周,查询一个月的数据)...

    我的日期 首先我们获取到的日期格式是这样的:2009-2-12或者2009-3-3或者2009-10-12,我们在组合sql语句的时候可以这样:(分了三个例子) 代码如下 @1select * fro ...

  2. mysql 查询一个月的数据

    查询语句 //今天 select * from 表名 where to_days(时间字段名) = to_days(now()); //昨天 SELECT * FROM 表名 WHERE TO_DAY ...

  3. MYSQL查询一个月前的数据

    日期格式SELECT (DATE_ADD(now(),INTERVAL -1 month))时间戳格式SELECT UNIX_TIMESTAMP(DATE_ADD(now(),INTERVAL -1 ...

  4. 使用vue-cli+element-ui+expsess+mysql做一个简易的登录功能

    使用vue-cli+element-ui+expsess+mysql做一个简易的登录功能 1使用webpack下载vue模板 vue init webpack aaa(aaa为项目名称) cd到aaa ...

  5. 查询一个月一来表空间的变化情况

    自己写的一个小脚本,该脚本可以查询一个月一来表空间的变化情况,注意,该脚本只能在10g以及以上版本中运行,因为 9i没有dba_hist_tbspc_usage这个视图 select a.name,b ...

  6. 查询一个月的全部日期

    1.解析:查询一个月的全部日期 SELECT ADDDATE(monthAndDay.first, allMonth.d - 1) as day, -- 这是每个月的全部天数 经过每一次的查找进行加 ...

  7. MySQL查询一个表的前25%的数据

    MySQL查询一个表的前25%的数据,SQL如下: # qianfeng SELECT g.* FROM (SELECT @rownum:=0) r join tb_shopping_car g wh ...

  8. 一个月赚5万美元--国产共享软件开发者周奕2

    一个月赚5万美元--国产共享软件开发者周奕2 编辑:未知 文章来源:http://blog.csdn.net/it88blog/archive/2007/09/19/1791845.aspx 周奕还不 ...

  9. 一个月赚5万美元--国产共享软件开发者周奕3

    一个月赚5万美元--国产共享软件开发者周奕3 http://blog.csdn.net/it88blog/archive/2007/09/19/1791847.aspx 共享软件如何进军海外 新闻内容 ...

  10. mysql查询特定时间数据视频_mysql查询特定时间段内的数据

    参照文章(mysql查询时间段内数据)进行了操作. 先来建表语句: [sql] view plaincopySETFOREIGN_KEY_CHECKS=0;-- ------------------- ...

最新文章

  1. 微信月活跃用户数6.97亿 全球十大消息应用第四
  2. 浅析为何使用融合CDN是大趋势?
  3. 概率论-2.4 常用离散分布(待补充期望方差证明)
  4. java fileupload 文件_java用Commons fileupload 文件的上传
  5. 以A表中的值快速更新B表中记录的方法
  6. OC中description、 SEL、类本质、self和super用法
  7. 学习Java编程,英语对我们来说有多重要?
  8. C4:Unity3D制作智能家居设计软件——导入户型图(临摹图)
  9. linux下查看设备的接口,linux 查看sdio接口有哪些设备?
  10. 中国大侠vs生化战士(转)
  11. 2018春季校园招聘笔经面经合集:Java开发岗
  12. 新网站关键词优化小技巧
  13. RefSeq Protein Accession转换为蛋白质(YP_009227197转换成Protein)
  14. 动态内存申请(malloc, calloc, new)之分配虚拟内存空间和物理内存空间
  15. 有偏估计 无偏估计
  16. 用Selenium+xpath爬取京东商城
  17. 南邮通达计算机组成,计算机组成习题课(南邮)
  18. java 过滤特殊字符串和emoji表情符号
  19. Mysql传智jing_dong数据库
  20. 基于PHP+MySQL汽车展览会网站的设计与实现

热门文章

  1. 【优化算法】多目标蜻蜓优化算法(MODA)【含Matlab源码 1350期】
  2. 【路径规划】基于matlab多种算法无人机路径规划【含Matlab源码 1263期】
  3. 【数字信号处理】基于matlab GUI数字调音台【含Matlab源码 881期】
  4. 【股价预测】基于matlab最小二乘法股票价格预测【含Matlab源码 348期】
  5. 2中我建的表怎么是小写的_面试官:2个线程交替打印大小写英文字母,你会怎么实现?...
  6. 除了iframe嵌套还有什么嵌套_嵌套了ROUND函数,为什么还会差1分钱,值得收藏
  7. mysql2008分数约束_关于SQL2008对表中列的约束
  8. java test log4j main_Java 为程序创建日志系统
  9. mysql角色管理权限管理_mysql权限角色管理
  10. 考上985能改变命运吗_南开研究生称读研改变命运被嘲讽,网友:本科垃圾,考上985也没用...