交易表结构为user_id(用户ID),order_id(订单ID),pay_time(付款时间),order_amount(金额)

1. 写sql查询过去一个月付款用户量(提示:用户量需去重)最高的三天分别是哪几天?

 select
 date_format(pay_time,'%Y-%m-%d') days ,
count(distinct user_id) 
from table
where pay_time>=date_sub(now(),interval 1 month) #过去一个月
 group by date_format(pay_time,'%Y-%m-%d')
 order by count(distinct user_id) desc
 limit 3

2. 写sql查询昨天每个用户最后付款的订单ID及金额

select 
a.user_id, a.order_amount
 from
(select 
user_id, order_amount,
row_number() over(partition by user_id order by pay_time desc) as rank
from table
where date_format(pay_time,"%Y-%m-%d")=date_sub(curdate(),interval 1 day) #昨天
) as 
awhere rank=1

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值