SQL根据累计消费给用户评级

订单表:order_info
字段:order_id(订单ID) user_id(用户ID) create_date(下单日期) total_amount(订单金额)

需求:从订单信息表,order_info 中统计每个用户截止到下单日的累计消费金额,以及下单日对应的VIP等级

VIP等级更加累计消费金额计算,,如0=<x<10000 普通会员



 

 

 1 select 
 2  user_id,create_date
 3  ,leiji_tam
 4  ,case 
 5  when leiji_tam < 10000 then '普通会员'
 6  when leiji_tam < 30000 then '白银会员'
 7  when leiji_tam < 100000 then '白金会员'
 8  when leiji_tam >= 100000 then '钻石会员'
 9  end 
10  会员等级
11  
12  from (
13     select user_id,create_date,sum(tam) over(partition by user_id order by create_date rows between unbonded prceding and current row ) leiji_tam  from (
14    
15             select user_id,create_date,sum(total_amount) tam 
16              from order_info group by user_id,create_date
17       ) b 
18    
19 ) c 

 

posted on 2025-06-21 17:39  北京的小乔  阅读(28)  评论(0)    收藏  举报