复购率计算分析

数据概览

在这里插入图片描述
源数据

数据整理

  1. 复购率是对交易成功的客户而言,故首先剔除退款订单
  2. 对同一天内多次下单的客户订单进行去重
    在这里插入图片描述
    数据整理结果

数据可视化

在这里插入图片描述
复购率计算分析

简单分析

  1. 本月的复购率是16.93%
  2. 随着复购次数的增加,复购用户占比会逐渐减少,大部分复购用户购买了两次
  • 1
    点赞
  • 6
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
假设你的表名为 `orders`,包含以下字段:`order_id`(订单ID),`user_id`(用户ID),`order_time`(下单时间),`order_amount`(订单金额)。 以下是计算三个月复购复购金额、复购人数、购买金额、购买人数的 mySQL 查询语句,按月移动: ```sql SELECT DATE_FORMAT(order_time, '%Y-%m') AS month, COUNT(DISTINCT CASE WHEN DATEDIFF(order_time, first_order_time) <= 90 AND repeat_count > 0 THEN user_id END) / COUNT(DISTINCT CASE WHEN DATEDIFF(order_time, first_order_time) <= 90 THEN user_id END) AS repeat_rate, SUM(CASE WHEN DATEDIFF(order_time, first_order_time) > 90 AND repeat_count > 0 THEN order_amount ELSE 0 END) AS repeat_amount, COUNT(DISTINCT CASE WHEN DATEDIFF(order_time, first_order_time) > 90 AND repeat_count > 0 THEN user_id END) AS repeat_count, SUM(CASE WHEN DATEDIFF(order_time, first_order_time) <= 90 THEN order_amount ELSE 0 END) AS purchase_amount, COUNT(DISTINCT CASE WHEN DATEDIFF(order_time, first_order_time) <= 90 THEN user_id END) AS purchase_count FROM ( SELECT order_id, user_id, order_time, order_amount, MIN(order_time) OVER (PARTITION BY user_id) AS first_order_time, COUNT(*) OVER (PARTITION BY user_id) - 1 AS repeat_count FROM orders ) t GROUP BY DATE_FORMAT(order_time, '%Y-%m') ORDER BY month; ``` 解释一下查询语句: 1. `MIN(order_time) OVER (PARTITION BY user_id)` 表示每个用户的第一次下单时间; 2. `COUNT(*) OVER (PARTITION BY user_id) - 1` 表示每个用户的下单次数减去第一次下单,即复购次数; 3. `CASE WHEN DATEDIFF(order_time, first_order_time) <= 90 AND repeat_count > 0 THEN user_id END` 表示三个月内有复购用户ID; 4. `CASE WHEN DATEDIFF(order_time, first_order_time) > 90 AND repeat_count > 0 THEN order_amount ELSE 0 END` 表示三个月后有复购订单金额; 5. `CASE WHEN DATEDIFF(order_time, first_order_time) <= 90 THEN order_amount ELSE 0 END` 表示三个月内下的订单金额。 注意:上面的查询语句计算复购时使用的是用户数,而不是订单数。计算复购时,需要先确定每个用户的第一次下单时间,然后根据三个月内是否有复购来决定该用户是否算作复购用户

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值