美文网首页
邮件图图片实时数据

邮件图图片实时数据

作者: 洛水青柳2017 | 来源:发表于2018-10-12 16:30 被阅读0次
测试期间实时数据.png

1.第一个图片的SQL

SELECT a.channelid,sum(a.devs) as "新增设备"
            ,b.dnewdevsTB as "新增设备环比"
      ,sum(a.users) as "新增用户",sum(a.logdevs) as"登录设备",(sum(a.logdevs) -sum(a.devs)) as "活跃设备",(sum(a.logusers) -sum(a.users) ) as "活跃用户"
      ,b.dlogindevsTb as "登录设备环比"                  -- 
      ,sum(a.logusers) as "登录用户",sum(a.payusers) as "付费人数",sum(a.pay) as "付费金额" 
            ,b.payTb as  "付费金额环比"
      ,concat(round(sum(a.payusers)/sum(a.logusers)*100,0),"%")   as "付费率",round(sum(a.pay)/sum(a.payusers),2) as "ARPPU" ,round(sum(a.pay)/sum(a.logusers),2) as "ARPU"
 
FROM 
    -- 计算基本数据
        (
        SELECT channelid,SUM(dnewdevs) as devs ,SUM(dnewusers) as users ,SUM(dlogindevs) as logdevs, SUM(dloginusers) as logusers,SUM(payusers) as payusers,SUM(pay) as pay
            FROM realinfo  
         WHERE channelid in(select channelid from allchannel_bak )  
             AND basicdate = DATE_ADD(CURDATE(),INTERVAL HOUR(NOW()) HOUR)
         GROUP BY channelid 
         ) as a   
left  JOIN  
        -- 计算环比数据 
     (SELECT a.channelid
                    ,ifnull(concat(round((  (sum(a.devs)-sum(b.devs))/(sum(b.devs)-sum(c.devs))-1 )*100,0),"%"),"-") as dnewdevsTB
                    ,ifnull(concat(round(((sum(a.logdevs)-sum(b.logdevs))/(sum(b.logdevs)-sum(c.logdevs))-1)*100,0),"%"),"-")  AS dlogindevsTb
                    ,ifnull(concat(round(((sum(a.pay)-sum(b.pay))/(sum(b.pay)-sum(c.pay))-1)*100,0),"%"),"-")  as payTb
        from 
                 (SELECT channelid,SUM(dnewdevs) as devs  ,SUM(dlogindevs) as logdevs,SUM(pay) as pay
                     FROM realinfo  
                     WHERE basicdate =DATE_ADD(CURDATE(),INTERVAL HOUR(NOW()) HOUR)
                    and channelid in(select channelid from allchannel_bak  )  
                   GROUP BY channelid having sum(dlogindevs)>0
                    ) as a left join
                 (SELECT channelid,SUM(dnewdevs) as devs  ,SUM(dlogindevs) as logdevs,SUM(pay) as pay
                      FROM realinfo  
                     WHERE basicdate =DATE_ADD(CURDATE(),INTERVAL HOUR(NOW())-1 HOUR)
                     and channelid in(select channelid from allchannel_bak  )  
                   GROUP BY channelid
                 ) as b on a.channelid=b.channelid  left join
                 (SELECT channelid,SUM(dnewdevs) as devs  ,SUM(dlogindevs) as logdevs,SUM(pay) as pay
                     FROM realinfo  
                    WHERE  basicdate =DATE_ADD(CURDATE(),INTERVAL HOUR(NOW())-2 HOUR)
                    and channelid in(select channelid from allchannel_bak  )  
                  GROUP BY channelid
                 ) as c on a.channelid=c.channelid  
            group by a.channelid) b
on a.channelid=b.channelid  
 GROUP BY a.channelid

2.计算分渠道实时留存的数据

SELECT a.channelid,sum(a.devs) as "新增设备"
            ,b.dnewdevsTB as "新增设备环比"
      ,sum(a.users) as "新增用户",sum(a.logdevs) as"登录设备",(sum(a.logdevs) -sum(a.devs)) as "活跃设备",(sum(a.logusers) -sum(a.users) ) as "活跃用户"
      ,b.dlogindevsTb as "登录设备环比"                  -- 
      ,sum(a.logusers) as "登录用户",sum(a.payusers) as "付费人数",sum(a.pay) as "付费金额" 
            ,b.payTb as  "付费金额环比"
      ,concat(round(sum(a.payusers)/sum(a.logusers)*100,0),"%")   as "付费率",round(sum(a.pay)/sum(a.payusers),2) as "ARPPU" ,round(sum(a.pay)/sum(a.logusers),2) as "ARPU"
      ,c.u1remainratio,c.u2remainratio,c.u3remainratio,c.u4remainratio,c.u5remainratio,c.u6remainratio,c.u7remainratio
FROM 
    -- 计算基本数据
        (
        SELECT channelid,SUM(dnewdevs) as devs ,SUM(dnewusers) as users ,SUM(dlogindevs) as logdevs, SUM(dloginusers) as logusers,SUM(payusers) as payusers,SUM(pay) as pay
            FROM realinfo  
         WHERE channelid in(select channelid from allchannel_bak )  
             AND basicdate = DATE_ADD(CURDATE(),INTERVAL HOUR(NOW()) HOUR)
         GROUP BY channelid 
         ) as a   
left  JOIN  
        -- 计算环比数据 
     (SELECT a.channelid
                    ,ifnull(concat(round((  (sum(a.devs)-sum(b.devs))/(sum(b.devs)-sum(c.devs))-1 )*100,0),"%"),"-") as dnewdevsTB
                    ,ifnull(concat(round(((sum(a.logdevs)-sum(b.logdevs))/(sum(b.logdevs)-sum(c.logdevs))-1)*100,0),"%"),"-")  AS dlogindevsTb
                    ,ifnull(concat(round(((sum(a.pay)-sum(b.pay))/(sum(b.pay)-sum(c.pay))-1)*100,0),"%"),"-")  as payTb
        from 
                 (SELECT channelid,SUM(dnewdevs) as devs  ,SUM(dlogindevs) as logdevs,SUM(pay) as pay
                     FROM realinfo  
                     WHERE basicdate =DATE_ADD(CURDATE(),INTERVAL HOUR(NOW()) HOUR)
                    and channelid in(select channelid from allchannel_bak  )  
                   GROUP BY channelid having sum(dlogindevs)>0
                    ) as a left join
                 (SELECT channelid,SUM(dnewdevs) as devs  ,SUM(dlogindevs) as logdevs,SUM(pay) as pay
                      FROM realinfo  
                     WHERE basicdate =DATE_ADD(CURDATE(),INTERVAL HOUR(NOW())-1 HOUR)
                     and channelid in(select channelid from allchannel_bak  )  
                   GROUP BY channelid
                 ) as b on a.channelid=b.channelid  left join
                 (SELECT channelid,SUM(dnewdevs) as devs  ,SUM(dlogindevs) as logdevs,SUM(pay) as pay
                     FROM realinfo  
                    WHERE  basicdate =DATE_ADD(CURDATE(),INTERVAL HOUR(NOW())-2 HOUR)
                    and channelid in(select channelid from allchannel_bak  )  
                  GROUP BY channelid
                 ) as c on a.channelid=c.channelid  
            group by a.channelid) b
on a.channelid=b.channelid  
         --  计算留存的数据
 LEFT JOIN  
 (SELECT b.channelid ,u1remainratio -- ,u1remain,u1dnewdevs 
                    ,u2remainratio-- ,u2remain,u2dnewdevs 
                                        ,u3remainratio-- , u3remain,u3dnewdevs 
                                      ,u4remainratio-- , u4remain,u4dnewdevs 
                                        ,u5remainratio-- , u5remain,u5dnewdevs 
                                        ,u6remainratio-- ,u6remain,u6dnewdevs 
                                        ,u7remainratio-- ,u7remain,u7dnewdevs 
 FROM  
    (SELECT channelid,ROUND(IFNULL(SUM(usr1remain)/SUM(dnewdevs),0)*100,2) u1remainratio,IFNULL(SUM(usr1remain),0) u1remain,IFNULL(SUM(dnewdevs),0) u1dnewdevs  
             FROM serverinfo  
             WHERE basicdate >= '2018-09-14' AND basicdate < DATE_SUB(CURDATE(),INTERVAL IF(HOUR(NOW())=0,2,1) DAY)  and channelid in(select channelid from allchannel_bak )  
             GROUP BY channelid) b 
LEFT JOIN  
             (SELECT channelid,ROUND(IFNULL(SUM(usr3remain)/SUM(dnewdevs),0)*100,2) u3remainratio,IFNULL(SUM(usr3remain),0) u3remain,IFNULL(SUM(dnewdevs),0) u3dnewdevs  
             FROM serverinfo  
             WHERE basicdate >= '2018-09-14' AND basicdate < DATE_SUB(CURDATE(),INTERVAL IF(HOUR(NOW())=0,4,3) DAY)  and channelid in(select channelid from allchannel_bak ) 
             GROUP BY channelid) c ON b.channelid = c.channelid 
LEFT JOIN
             (SELECT channelid,ROUND(IFNULL(SUM(usr7remain)/SUM(dnewdevs),0)*100,2) u7remainratio,IFNULL(SUM(usr7remain),0) u7remain,IFNULL(SUM(dnewdevs),0) u7dnewdevs  
             FROM serverinfo  
             WHERE basicdate >= '2018-09-14' AND basicdate < DATE_SUB(CURDATE(),INTERVAL IF(HOUR(NOW())=0,8,7) DAY)  and channelid in(select channelid from allchannel_bak ) 
             GROUP BY channelid) d ON c.channelid =d.channelid 
 LEFT JOIN      
             (SELECT channelid,ROUND(IFNULL(SUM(usr2remain)/SUM(dnewdevs),0)*100,2) u2remainratio,IFNULL(SUM(usr2remain),0) u2remain,IFNULL(SUM(dnewdevs),0) u2dnewdevs  
             FROM serverinfo  
             WHERE basicdate >= '2018-09-14' AND basicdate < DATE_SUB(CURDATE(),INTERVAL IF(HOUR(NOW())=0,3,2) DAY) and channelid in(select channelid from allchannel_bak ) 
             GROUP BY channelid) e ON b.channelid = e.channelid 
  LEFT JOIN     
             (SELECT channelid,ROUND(IFNULL(SUM(usr4remain)/SUM(dnewdevs),0)*100,2) u4remainratio,IFNULL(SUM(usr4remain),0) u4remain,IFNULL(SUM(dnewdevs),0) u4dnewdevs  
             FROM serverinfo  
             WHERE basicdate >= '2018-09-14' AND basicdate < DATE_SUB(CURDATE(),INTERVAL IF(HOUR(NOW())=0,5,4) DAY) and channelid in(select channelid from allchannel_bak ) 
             GROUP BY channelid) f ON b.channelid = f.channelid 
   LEFT JOIN    
             (SELECT channelid,ROUND(IFNULL(SUM(usr5remain)/SUM(dnewdevs),0)*100,2) u5remainratio,IFNULL(SUM(usr5remain),0) u5remain,IFNULL(SUM(dnewdevs),0) u5dnewdevs  
             FROM serverinfo  
             WHERE basicdate >= '2018-09-14' AND basicdate < DATE_SUB(CURDATE(),INTERVAL IF(HOUR(NOW())=0,6,5) DAY) and channelid in(select channelid from allchannel_bak ) 
             GROUP BY channelid) g ON b.channelid = g.channelid 
    LEFT JOIN   
             (SELECT channelid,ROUND(IFNULL(SUM(usr6remain)/SUM(dnewdevs),0)*100,2) u6remainratio,IFNULL(SUM(usr6remain),0) u6remain,IFNULL(SUM(dnewdevs),0) u6dnewdevs  
             FROM serverinfo  
             WHERE basicdate >= '2018-09-14' AND basicdate < DATE_SUB(CURDATE(),INTERVAL IF(HOUR(NOW())=0,7,6) DAY) and channelid in(select channelid from allchannel_bak ) 
             GROUP BY channelid) h ON b.channelid = h.channelid 
     GROUP BY  b.channelid) as c on a.channelid=c.channelid
 GROUP BY a.channelid ;

相关文章

  • 邮件图图片实时数据

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

  • 大数据之实时流Flink

    思维导图 思维导图 宏观之实时流架构 实时流之lamda架构 分析: 批处理层: 也就是大数据中的离线存储。它通过...

  • 综合案例 - 陌陌实时采集日志

    需求 陌陌综合案例,业务数据流程图:陌陌用户聊天数据存储到日志log文件中,实时采集到Kafka消息队列,实时消费...

  • Swift PaintCode 简单使用

    PaintCode 简单使用 图片绘制生成代码 代码使用 实时调试 demo地址 下载地址 PaintCode 图...

  • Apache Hudi使用简介

    [TOC] 数据实时处理和实时的数据 实时分为处理的实时和数据的实时即席分析是要求对数据实时的处理,马上要得到对应...

  • 简单概述企业级大数据云平台该如何规划

    一、大数据云平台应当具备 Real time 实时 海量实时计算 数据实时录入 动态实时标签 平台实时监控 数据实...

  • 使用SpreadJS 开发在线问卷系统,构筑CCP(云数据采集)

    什么是CCP(云数据采集)平台? 图片来自于网络 CCP(云数据采集)平台诞生于大数据时代的背景下,通过实时数据挖...

  • 720场景显示和panoramaGL的导入

    这个是一个静态的,全景图演示,一个完整的全景图需要6张图片合成,还要注意图片排放顺序,如果要是其它的全景图是实时的...

  • 图建模和图存储速记

    图数据库支持对图数据模型CRUD ,底层存储分为原生和非原生,支持对大图形数据的实时更新,同时支持查询,具有灵活的...

  • 港股实时行情数据

    港股实时行情数据 所有港股实时交易行情数据,港股实时数据,支持代码筛选。 1. 产品功能 支持所有港股实时交易数据...

网友评论

      本文标题:邮件图图片实时数据

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