序列函数
ntile
# 获取一个表中,所有消费记录,每个人后50%的消费记录withtas(select*,ntile(2)over(partitionbyname)xhfromt_order)select*fromtwherexh=2lag & lead
# 获取上一次的消费记录select*,lag(orderdate,1,1900-01-01)over(partitionbynameorderbyorderdate)fromt_order# 5分钟,点击100次的用户selectid,dt,lag(dt,100),排名函数
1、row_numer() 没有并列
2、rank() 存在并列,存在空位
3、dense_rank() 存在并列,不存在空位