Hive综合案例练习(中级)第四题:查询用户的累计消费金额及VIP等级
创始人
2025-05-28 22:34:39
0

查询用户的累计消费金额及VIP等级

题目需求

从订单信息表(order_info)中统计每个用户截止其每个下单日期的累积消费金额,以及每个用户在其每个下单日期的VIP等级。

用户vip等级根据累积消费金额计算,计算规则如下:

设累积消费总额为X,

若0=

若10000<=X<30000,则vip等级为青铜会员

若30000<=X<50000,则vip等级为白银会员

若50000<=X<80000,则vip为黄金会员

若80000<=X<100000,则vip等级为白金会员

若X>=100000,则vip等级为钻石会员

期望结果如下:

user_id(用户id)create_date(下单日期)sum_so_far(截至每个下单日期的累计下单金额)vip_level(每个下单日期的VIP等级)
1012021-09-2729000.00青铜会员
1012021-09-2899500.00白金会员
1012021-09-29142800.00钻石会员
1012021-09-30143660.00钻石会员
1022021-10-01171680.00钻石会员
1022021-10-02177850.00钻石会员
1032021-10-0269980.00黄金会员
1032021-10-0375890.00黄金会员
1042021-10-0389880.00白金会员
1052021-10-04120100.00钻石会员
1062021-10-049390.00普通会员
1062021-10-05119150.00钻石会员
1072021-10-0569850.00黄金会员
1072021-10-06124150.00钻石会员
1082021-10-06101070.00钻石会员
1082021-10-07155770.00钻石会员
1092021-10-07129480.00钻石会员
1092021-10-08153500.00钻石会员
10102021-10-0851950.00黄金会员

代码实现

select user_id,create_date,sum_so_far,case when sum_so_far>=0 and sum_so_far<10000 then '普通会员'when sum_so_far>=10000 and sum_so_far<30000 then '青铜会员'when sum_so_far>=30000 and sum_so_far<50000 then '白银会员'when sum_so_far>=50000 and sum_so_far<80000 then '黄金会员'when sum_so_far>=80000 and sum_so_far<100000 then '白金会员'ELSE '钻石会员'end `会员等级`
from		
(SELECT user_id,create_date,sum(total_amount_per_day) over (partition by user_id order by create_date) sum_so_farFROM (select user_id,create_date,sum(total_amount) total_amount_per_dayfrom order_info group by user_id,create_date )t1
)t2

相关内容

热门资讯

数据库缓存 许多web停用都将数据保存到RDBMS(关系型数据库)中,...
各地政策持续加力 城市更新提速 人民网北京5月31日电(记者许维娜)近日,中共中央办公厅、国务院办公厅印发《关于持续推进城市更新行动...
河南胜蓝律师事务所开展《中华人... 在“六一国际儿童节”来临之际,河南胜蓝律师事务所刘红平主任带领律师志愿者走进驻马店市博爱幼儿园,开展...
Java每日一练(202303... 目录 1. 出现次数最多的字符  🌟 2. 最后一个单词的长度  🌟...
基于卷积神经网络CNN的图像分... 目录 背影 卷积神经网络CNN的原理 卷积神经网络CNN的定义 卷积神经网络CNN的神经元 卷积神经...
每周股票复盘:ST金鸿(000... 截至2025年5月30日收盘,ST金鸿(000669)报收于2.26元,较上周的2.22元上涨1.8...
每周股票复盘:洁特生物(688... 截至2025年5月30日收盘,洁特生物(688026)报收于15.68元,较上周的15.08元上涨3...
莱伯泰科股价小幅下跌 专利侵权... 截至2025年5月30日收盘,莱伯泰科股价报31.81元,较前一交易日下跌0.21元,跌幅0.66%...
南微医学股价微跌 专利诉讼进展... 南微医学股价报67.32元,较前一交易日下跌0.27%。盘中最高触及67.97元,最低下探66.70...
Unity学习笔记——unit... 2019-8-26 视频1: 巴拉巴拉巴拉 视频2: unity的介绍 ...