主要用到的窗口函数:row_number() over(partition by …order by…)
max() over(partition by …)
min() over(partition by …)
案例:有一组数据,第一列是类型A/B,第二列是操作时间,怎么取出不同类型不同时间段的最大、最小操作时间?
结果:
解决:
select distinct type,min_type,max_type
from(
select type,time,max(time) over(partition by flag) max_type
,min(time) over(partition by flag) min_type
from(
select a.*,rn2_type-rn_time flag
from(
select type,time
,row_number(