以下这些都是针对于电商网站的指标来分析业务的:以下这些指标都是使用SQL语句分析得出的结果,首先先创建一张表,然后将数据导入表中,字段根据分析的业务的需要而定,这里我的选择是我已经存在的表进行查询的,下面将给出所有查询的SQL语句

模块分析:
select * from web_log.weblog_etl where dateStr="20180709" limit 5;

1.统计每天每小时的PV数
select day,hour,count(request) as pvs from web_log.weblog_detail where dateStr="20180709" group by day,hour

2.统计每天的pv数
select dayStr,day,count(request) as pvs from web_log.weblog_detail where dateStr="20180709" group by dayStr,day

3.统计每月的pv数
select dayStr,month,count(request) as pvs from web_log.weblog_detail where dateStr="20180709" group by dayStr,month

4.统计不同终端维度的PV数
select dayStr,user_agent,count(request) as pvs from web_log.weblog_detail where dateStr="20180709" group by dayStr,user_agent

5.统计不同终端类型
select user_agent,count(user_agent) as iphone from web_log.weblog_detail where dateStr="20180709" group by user_agent

6.统计每个月每个终端的pv数
select dayStr,month,day,hour,user_agent,count(request) as pvs from web_log.weblog_detail where dateStr="20180709" group by dayStr,month,day,hour,user_agent

7.统计人均pv数
select dayStr,count(request)/count(distinct ip) from web_log.weblog_detail where dateStr="20180709" group by dayStr

8.统计不同来源的pv数

select
*
from
(
select t.ref_host,t.dayStr,t.hour,t.pv,row_number() over (partition by t.ref_host order by t.pv) as rnk
from 
(
select
ref_host,dayStr,hour,count(request) as pv
from
web_log.weblog_detail
where
dateStr="20180709"
group by
ref_host,dayStr,hour
)t
)n
where n.rnk <4
---------------
select
*
from
(
select t.ref_host,t.pv,row_number() over (partition by t.ref_host order by t.pv) as rnk
from 
(
select
ref_host,count(request) as pv
from
web_log.weblog_detail
where
dateStr="20180709"
group by
ref_host
)t
)n
where n.rnk <4

9.受访分析
9.1统计每日热门的受访页面的topN
9.1.1先统计每日每个网页访问次数
  select dayStr,request,count(request) as counts from weblog_detail
where dateStr="20180709" group by dayStr,request

(2)row_number
   select dayStr,request,count(request) as pv,row_number() over (partition by request order by request) from weblog_detail
where dateStr="20180709" group by dayStr,request

10.访客分析
10.1每个访客每小时的访问数(session个数)
select
ip,substring(s_time,12,2) as hour,count(distinct sessionId) as number
from web_log.weblog_pv
where
dateStr="20180709"
group by ip,substring(s_time,12,2)

10.2每个小时的ip访问数
select day,hour,count(ip) from web_log.weblog_detail where dateStr="20180709" group by day,hour

10.3每天的/每月的ip访问数
select month,day,count(ip) from web_log.weblog_detail where dateStr="20180709" group by month,day

10.4统计新增访客---需要维护 历史访客表

11.visit模型分析
11.1单次访客统计(sessionId只有一个)
select
substring(s_time,9,2),ip,count(distinct sessionId) as number
from
web_log.weblog_pv
where
dateStr="20180709"
group by
substring(s_time,9,2),ip
having number=1

11.2回头访客个数(sessionId >1)
select
substring(s_time,9,2),ip,count(distinct sessionId) as number
from
web_log.weblog_pv
where
dateStr="20180709"
group by
substring(s_time,9,2),ip
having number>1

11.3人均访问频率(一天访问多少次) 总session个数/总人数
select
substring(s_time,9,2) as day,count(distinct sessionId)/count(distinct ip) as number
from
web_log.weblog_pv
where
dateStr="20180709"
group by 
substring(s_time,9,2)

11.4用户平均访问页数
select sum(pageNum)/count(distinct ip) from web_log.weblog_visit where dayStr="20180709"

12pageview模型分析
12.1每个用户的访问时长
select
ip,sum(stayTime) as alltime
from
web_log.weblog_pv
where dateStr="20180709"
group by ip
12.2 用户的平均访问时长
select sum(stayTime)/count(distinct ip) as avg_time
from
web_log.weblog_pv
where
dateStr="20180709"

12.3访问页面的漏斗

create table tb_num1 as 
select "step1" as  step, count(*) as number from web_log.weblog_pv where dateStr="20180709" and request  like "%/hadoop-mahout%"  

union all 
select "step2" as  step, count(*) as number from web_log.weblog_pv where dateStr="20180709" and request  like "%/hadoop-hive%"   

union all  
select "step3" as  step, count(*) as number from web_log.weblog_pv where dateStr="20180709" and request  like "%/hadoop-zookeeper%"  

union all  
select "step4" as  step,count(*) as number from web_log.weblog_pv where dateStr="20180709" and request  like "%/black-ip-list%"  

create table tb_num as 
select "step1" as  step, count(*) as number from web_log.weblog_pv where dayStr="20180709" and request  like "%/hadoop-mahout%"
union all   
select "step2" as  step, count(*) as number from web_log.weblog_pv where dayStr="20180709" and request  like "%/hadoop-hive%" 
union all  
select "step3" as  step, count(*) as number from web_log.weblog_pv where dayStr="20180709" and request  like "%/hadoop-zookeeper%"  
union all  
select "step4" as  step,count(*) as number from web_log.weblog_pv where dayStr="20180709" and request  like "%/black-ip-list%"

select
   *
from
   tb_num
   
-----全链接    笛卡尔积
select
   *
from
   (select tb_num.step as ak,tb_num.number as av from tb_num) a,
   (select tb_num.step as bk,tb_num.number as bv from tb_num) b

-----漏斗

select
 t.ak,t.av,t.bk,t.bv,t.av/t.bv as retain_rate
from
(
select
   *
from
   (select tb_num.step as ak,tb_num.number as av from tb_num) a,
   (select tb_num.step as bk,tb_num.number as bv from tb_num) b
) t
where
   t.ak='step1' and t.bk='step1' or
   t.ak='step2' and t.bk='step1' or
   t.ak='step3' and t.bk='step2' or
   t.ak='step4' and t.bk='step3'

 实例:不使用hive中的函数  

公司有多个部门,统计出各个部门中 按照工资排序 前3的。(9条)
      name        deptNo         sal    
      1-1        1            9000
      1-2        1            6000
      1-3        1            7000
      2-1        2            8000
      3-2        3            7600
      2-3        2            8800
      2-5        2            8800
      3-3        3            5500
      3-4        1            5000

SQL语句:

select deptno, name, sal      
from emp e1     
where      
   (  
    select count(1)     
    from emp e2     
    where e2.deptno=e1.deptno and e2.sal>=e1.sal  
   ) <=3 /*这里的数值表示你想取前几名*/  
order by deptno, sal desc; 

   

【SQL】电商网站各模块指标的统计以及分析相关推荐

  1. 电商网站如何进行库存同步处理Redis+Lua

    电商网站库存模块 库存表包含了商品的sku,商品类型,商品款号,颜色,尺码,库存数,版本号,创建时间,修改时间. 商品类型,可根据商品分为,普通商品,赠品,内卖商品,预售商品等 库存表结构 @Data ...

  2. 项目案例——电商网站

    初学程序结构写的一个简单网站,使用了大量的循环语句,代码重复较多,因此参考度不大. 下面是完整代码: """ 用户登录的电商网站 """ # ...

  3. 电商网站购物车存储方式

    大型电商网站在购物节的时候都会有很高的并发量,购物车模块无疑是访问最多的,那么要如何设计才能扛住并发量呢 1.Session方式: 优点:初期性能好,访问快,保存在服务端,相对比较安全 缺点:对于大型 ...

  4. 人气流量通通要!电商网站商品页设计超全面指南

    编者按:今天这篇文章读完后,同学们可以来做一个小练习,根据文章,把优设看做一个电商网站,文章看做商品,来分析一下哪篇文章是热门,有哪些突出的方法,文章里藏有哪些引导用户的细节等等,即学即用,不容易忘, ...

  5. 《Spark SQL大数据实例开发》9.2 综合案例实战——电商网站搜索排名统计

    <Spark SQL大数据实例开发>9.2 综合案例实战--电商网站搜索排名统计 9.2.1 案例概述     本节演示一个网站搜索综合案例:以京东为例,用户登录京东网站,在搜索栏中输入搜 ...

  6. 电商网站中用户评论模块剖析

    用户评论是电商网站交互设计中的重要模块之一,用户体验的好坏将直接影响到产品的销售数量,乃至整站的访问量.网上购物,我们只能看到一张张商品图片和描述,对于产品的优劣无法准确判断,因此,已购买者的评论对于 ...

  7. 电商网站运营的 7 大关键指标

    本文介绍电商网站用户运营转化的相关指标体系,通过对这些指标的统计.监测和分析,可以及时发现电商运营的问题,以便有效及时改进和优化,提升电商转化率和销售额. 其中,不同类别指标对应电商运营的不同环节,如 ...

  8. 电商总结(八)如何打造一个小而精的电商网站架构

    前面写过一些电商网站相关的文章,这几天有时间,就把之前写得网站架构相关的文章,总结整理一下.把以前的一些内容就连贯起来,这样也能系统的知道,一个最小的电商平台是怎么一步步搭建起来的.对以前的文章感兴趣 ...

  9. 用户在电商网站中购买成功了,那么 TA 在微服务中经历了什么?

    题目:用户在电商网站中购买成功了,那么它在微服务中经历了什么? 当我傻啊,用户在电商网站购买成功,还在微服务中,那肯定就是有一套微服务架构的电商系统. 设计一套电商系统还不简单 简单想象一下,既然是一 ...

最新文章

  1. 编译openwrt时报错:g++: internal compiler error: Killed (program cc1plus)
  2. java contains_Java基础教程|生成不重复随机数 java
  3. Win10安装玩Ubuntu19.04后,bios和grub页面都没有Windows启动项,无法进入Windows
  4. @ConfigurationProperties使用时几个常见误区
  5. Nginx 部署 Vue 项目刷新页面出现404
  6. java linkedlist实例_Java Linkedlist原理及实例详解
  7. silverligh的数据访问
  8. 【转载 | 笔记】IIS无法删除应该程序池 因为它包含X个应用程序
  9. 同步/异步与阻塞/非阻塞的区别
  10. java同步list_Java集合--ArrayList出现同步问题的原因
  11. opencv中mean函数耗时_使用OpenCV进行人脸对齐
  12. iis web服务扩展_Web服务器系统都有哪些类型?都有什么优点呢?
  13. NHibernate.Cfg.HibernateConfigException
  14. 加拿大计算机硕士留学移民,加拿大硕士留学移民深度解析,纯干货
  15. 浅谈LBP原理和代码(基于Python)
  16. 自学3D游戏建模有哪些教材?自学难不难?能学成就业吗
  17. 记一次带宽跑满服务器卡死事故处理
  18. 负折射率波导matlab,宁波大学教授—董建峰
  19. [转]来自西弗吉利亚大学li xin整理的CV代码合集
  20. Gitkraken收费问题解决

热门文章

  1. 归纳推理测试没做完_天气热,教你用寒天粉做果冻,清凉爽滑,5秒吃完一盘没问题...
  2. 天融信网闸web界面登录方式_有颜值更有才华,乘风破浪的天融信面板AP接受硬核实测...
  3. 一台弹性云服务器可以挂载多块磁盘吗?
  4. 优秀常用网站汇总.txt
  5. Docker学习总结(56)——Docker-compose 基础知识温习
  6. Java基础学习总结(157)——国产开源JDK来了
  7. qt mysql dao_Qt 数据库使用方法 mysql语句
  8. 机器学习pdf_2020年新书-《机器学习算法入门》免费pdf分享
  9. zabbix自动发现及其自动注册
  10. Oracle遇到的一些坑