2.2 案例
查询出用户【yantian】和【lisi】的时间偏移(后N行)
分析:通过lead()窗口函数进行实现
SELECT
user_name,
pay_time,
lead( pay_time, 1, pay_time ) over ( PARTITION BY user_name ORDER BY pay_time ) lead1,
lead( pay_time ) over ( PARTITION BY user_name ORDER BY pay_time ) lead2,
lead( pay_time, 2, pay_time ) over ( PARTITION BY user_name ORDER BY pay_time ) lead3,
lead( pay_time, 2 ) over ( PARTITION BY user_name ORDER BY pay_time ) lead4
FROM
user_order
WHERE
user_name IN ( ‘lisi’, ‘yantian’ );
复制代码
运行结果
2.3 案例
查询出支付时间间隔超过10天的用户数
分析:
-
同一用户,相邻的订单进行下单时间比较,如果相邻订单下单时间间隔超过10天,那么这个用户就是需要统计的
-
在这个过程中,需要进行相邻订单支付时间相减