--! qt:dataset:part | |
create temporary function mylastval as 'org.apache.hadoop.hive.ql.udf.generic.GenericUDAFLastValue'; | |
select p_mfgr,p_name, p_size, | |
sum(p_size) over (distribute by p_mfgr sort by p_name rows between current row and current row) as s2, | |
first_value(p_size) over w1 as f, | |
last_value(p_size, false) over w1 as l, | |
mylastval(p_size, false) over w1 as m | |
from part | |
window w1 as (distribute by p_mfgr sort by p_name rows between 2 preceding and 2 following); | |