美文网首页数据库知识点
sql 技巧(-)留存设备计算

sql 技巧(-)留存设备计算

作者: 洛水青柳2017 | 来源:发表于2017-09-18 18:50 被阅读8次

一、设备留存求解

过程分解

  代码:# 设备存留去重新

SELECT  g.time  ,

-- 行列转置

sum(if(days = 1,rc,0)) as '1d',sum(if(days = 2,rc,0)) as '2d',sum(if(days = 3,rc,0)) as'3d',sum(if(days=4,rc,0)) as '4d',sum(if(days = 5,rc,0)) as '5d'FROM

-- 按照注册日期和留存日期汇总

(SELECT  G.TIME,G.DAYS ,COUNT(TIME) RC FROM

--计算留存日期

(SELECT a.time ,a.deviceid,b.* ,DATEDIFF(b.logintime,TIME) AS DAYS FROM

--去除创角表中的重复值

(SELECT  b.accid,b.deviceid,DATE_FORMAT(b.time,'%Y-%m-%d')  time from

t_hero_createrole    as  b

INNER JOIN

(SELECT  a.accid  , min(a.time)  as  t  FROM  t_hero_createrole  as  a

GROUP BY  a.accid)a

on  a.accid =b.accid and  a.t =b.time) as a

RIGHT JOIN

--去除登录表的重复值

(select  c.accid  ,date_format(c.logintime,'%Y-%m-%d' ) as logintime from t_hero_logout as c

GROUP BY  c.accid  ,date_format(c.logintime,'%Y-%m-%d' ) ) as b

on a.accid =b.accid) AS  G

WHERE  G.TIME IS NOT NULL AND  DAYS > 0

GROUP BY  G.TIME,G.DAYS)  G

GROUP BY  G.TIME

相关文章

  • sql 技巧(-)留存设备计算

    一、设备留存求解 代码:# 设备存留去重新 SELECT g.time , -- 行列转置 sum(if(da...

  • 四种口径的留存率

    留存的计算有两个维度,基于设备或账号,基于活跃或新增。 对这个计算方式做排列组合,有四种留存的定义:基于设备的活跃...

  • 邮件图图片实时数据

    1.第一个图片的SQL 2.计算分渠道实时留存的数据

  • 【今日刷题】SQL29 计算用户的平均次日留存率

    题目 SQL29 计算用户的平均次日留存率[https://www.nowcoder.com/practice/1...

  • sql-留存

    --sumdate--返回结果的注册日期 --REGDATE--子表注册日期 --LOGINDATE--次日登陆日...

  • 玩家留存计算的两种SQL语句

    留存简单来说就是某天的注册用户有多少人在多少天后还在继续使用,但具体的定义各个公司可能都不太一样,比如三日留存是在...

  • sql查询精编

    1.留存用户的计算问题 涉及表格和字段如下 member 表是用户信息表记录用户注册时间、注册设备和其他相关信息 ...

  • MacOS 终端

    入门指南及进阶技巧 终端(Terminal)也称终端设备,是计算机网络中处于网络最外围的设备,主要用于用户信息的输...

  • flink sql

    SQL的很多概念无法直接映射到流计算,这就是在流计算上定义SQL的难点。 为了在流计算上定义SQL,我们需要引入几...

  • Flink 最锋利的武器:Flink SQL 入门和实战

    [TOC] 一、Flink SQL 背景 Flink SQL 是 Flink 实时计算为简化计算模型,降低用户使用...

网友评论

    本文标题:sql 技巧(-)留存设备计算

    本文链接:https://www.haomeiwen.com/subject/olcqkxtx.html