2025-01 美团 中等

用户的分群基于RFM(Recency, Frequency, Monetary)分析模型进行评分,具体如下:

  • Recency(最近一次消费):用户最近一次购买商品的日期与今天相隔的时间。
  • Frequency(消费频率):统计用户在历史交易记录中不同的活跃天数。
  • Monetary(消费金额):计算每个用户的平均消费金额。

对于上述三个维度,分别使用NTILE(3)函数将所有用户分为三等份,得到每个用户的Recency、Frequency和Monetary评分(1至3分)。然后,将这三个评分相加,得到每个用户的总评分。根据总评分对用户进行分群,规则如下:

  • 5分以下为一档;
  • 6到8分为一档;
  • 9分为一档。

你的任务是编写SQL查询来实现这一需求,并使用REPEAT('■', cnt)的方式展示各个分数段内用户的数量分布情况。例如,如果某个分数段有5个用户,则应输出■■■■■

RFM模型 聚合函数 窗口函数 group by inner join avg case when distinct count datediff + concat current_date <= = ntile repeat

mt_trx_rcd_f,餐饮商户团购消费记录表

cust_uid trx_amt mch_nm mch_typ2 trx_dt
MT10008 132 阿里山烘焙坊(亚贸店) 面包甜点 2024-05-03
MT10000 53 星巴克(融创茂店) 咖啡厅 2024-09-16
MT10007 334 老胶东小船海鲜 海鲜 2024-05-22
MT10004 358 一枚帅哥做的菜 海鲜 2024-09-15
MT10003 154 一枚帅哥做的菜 海鲜 2024-11-16

 

 成为会员,解锁300道大厂数分SQL真题

ID317 基于消费天数和平均消费金额NTILE分组计算每个用户的RFM评分  
中等 group by inner join avg case when distinct count datediff current_date ntile 聚合函数 RFM模型 美团
ID320 总分为9分的所有用户  
中等 group by inner join avg case when distinct count datediff + current_date ntile 聚合函数 RFM模型 美团
ID323 统计每一类RFM用户的数量  
困难 group by inner join avg case when distinct count datediff + concat current_date group_concat ntile 聚合函数 窗口函数 RFM模型 美团
ID324 找出流失风险客户(R=1且F<=2)  
中等 group by inner join avg case when distinct count datediff + concat current_date group_concat <= = ntile 聚合函数 窗口函数 RFM模型 美团
ID326 按商户类型统计流失风险客户  
中等 group by inner join avg case when distinct count datediff + current_date ntile 聚合函数 窗口函数 RFM模型 美团

MySQL 8.0

00:00