MySQL数据分析案例---网购客户行为分析

这次主要是根据电商网站上用户的行为来进行相关的数据分析,本次数据主要是采集了11月25-12月03日的用户点击量,购买量,收藏量和加入购物车量,每行数据表示一位用户的行为记录,本表主要是包含5个字段,user id,item id, shop id,type,timetamp.
根据数据提出问题:
1、每天客户的点击量(pv)是多少?
2、客户的转化率是多少?
3、流失客户是多少?
4、销售前五的商品是什么?
5、每天客户的浏览量是多少?
一、数据导入
数据文本是CSV文本类型,导入到MySQL数据库中,打开navicat,点击导入,导入所需要的文件,然后保存在单独的一个表中,表名为“user”
MySQL数据分析案例---网购客户行为分析_第1张图片二、数据清洗
表的最后一个字段是个时间戳,所以需要把时间戳改成我们平常用的年月日这种类型
在这里插入图片描述
新建查询:输入:UPDATE user SET timestamp = FROM_UNIXTIME(timestamp,’%y-%m-%d’);
这样就能把时间戳转换成我们需要的年月日类型
MySQL数据分析案例---网购客户行为分析_第2张图片
因为本次想要知道是11月25-12月3日的用户行为信息,所以要从表中进行筛选出我们需要的客户信息
查询输入:SELECT DISTINCT timestamp FROM user ORDER BY timestamp;
MySQL数据分析案例---网购客户行为分析_第3张图片MySQL数据分析案例---网购客户行为分析_第4张图片
上述查询到的是整个表格里的时间节点,所以要从中挑选出我们需要的时间节点
查询输入:SELECT * FROM user WHERE timestamp BETWEEN ‘17-11-25’ AND ‘17-12-03’;MySQL数据分析案例---网购客户行为分析_第5张图片为了方便,所以把上面查询的结果创建个视图,并检验上面的结果是否是17-11-25 至 17-12-04里的记录
查询输入:CREATE VIEW user_1 AS(SELECT * FROM user WHERE timestamp BETWEEN ‘17-11-25’ AND ‘17-12-03’);
SELECT DISTINCT timestamp FROM user_1 GROUP BY timestamp;
MySQL数据分析案例---网购客户行为分析_第6张图片

经检验,记录摘取正确,上面的都是准备工作,下面就要根据问题来进行相关的分析;
三、数据分析
1、每天客户的点击量(pv)是多少?
查询输入:SELECT timestamp,COUNT(type) FROM user_1 WHERE type = ‘pv’ GROUP BY timestamp;
MySQL数据分析案例---网购客户行为分析_第7张图片
MySQL数据分析案例---网购客户行为分析_第8张图片可以看出在12月2号和3号这两天用户的点击量蛮大的,其他日期表现平平,估计12号商家推出不少优惠活动。
2、客户的转化率是多少?
查询输入:SELECT COUNT(DISTINCT user id) as countuser,(SELECT COUNT(DISTINCT user id) FROM user_1 WHERE type =‘buy’) AS countbuyer FROM user_1;
MySQL数据分析案例---网购客户行为分析_第9张图片
转化率=countbuyer/countuser 即得转化率为68.8%
3、流失客户是多少?
既没有把商品收藏也没有加入购物车和购买商品的客户
查询输入:SELECT COUNT(DISTINCT user id) as countuser FROM user_1 WHERE user id NOT in (SELECT user id FROM user_1 WHERE type in(‘buy’,‘fav’,‘cart’));
MySQL数据分析案例---网购客户行为分析_第10张图片
之前查询的总客户量是7480,
所以流失率=流失量/客户总量=5.86%
还有就是加入购物车和收藏了商品,但是没有买单的客户
加入购物车没有购买的客户
查询输入:SELECT DISTINCT (SELECT COUNT(DISTINCT user id) FROM user_1 WHERE type = ‘fav’) AS favuser,
(SELECT COUNT(DISTINCT user id) FROM user_1
WHERE user id in (SELECT user id FROM user_1 WHERE type = ‘fav’) AND type = ‘buy’) AS buyuser FROM user_1;
MySQL数据分析案例---网购客户行为分析_第11张图片
从上面可以看到加入购物车并且买单的人还是不少的,所以
加入购物车美买单的流失率=加入购物车没买量/加入购物车量=2.8%
MySQL数据分析案例---网购客户行为分析_第12张图片4、销售前五的商品是什么?
查询输入:SELECT COUNT(type) ,shop id FROM user_1 WHERE type = ‘buy’ GROUP BY shop id ORDER BY COUNT(type) DESC;
MySQL数据分析案例---网购客户行为分析_第13张图片
所以销售前五的商品可根据上图的结果选出前五即可
5、每天客户的浏览量是多少?
查询输入:SELECT COUNT(DISTINCT user id), timestamp FROM user_1 GROUP BY timestamp;
MySQL数据分析案例---网购客户行为分析_第14张图片
MySQL数据分析案例---网购客户行为分析_第15张图片在12月2号浏览量蛮高的 ,日常的话基本上都应该算是处于11月25日-12月1日这样的浏览数量上,12月2号和3号浏览量飙升

你可能感兴趣的:(MySQL数据分析案例---网购客户行为分析)