选择 Impala/HIVE/SQL 中的倒数第二个值
Choosing the second to last value in Impala/HIVE/SQL
我想获取 Impala 中列表的倒数第二个项目。是否有 function/method 会 return (min+1)(x)?
示例table:
foo bar
1 3
2 5
3 6
4 2
5 8
函数
SELECT MIN(bar) FROM example
将return
bar
2
我想 select 而不是 bar 中数值列表中的倒数第二个值:
SELECT SECONDTOLAST(bar) FROM example
returning
bar
3
您可以使用row_number()
函数:
select t.bar
from (select *, row_number() over (order by bar) as seq
from table
) t
where seq = 2; -- Get the second last bar
我想获取 Impala 中列表的倒数第二个项目。是否有 function/method 会 return (min+1)(x)?
示例table:
foo bar
1 3
2 5
3 6
4 2
5 8
函数
SELECT MIN(bar) FROM example
将return
bar
2
我想 select 而不是 bar 中数值列表中的倒数第二个值:
SELECT SECONDTOLAST(bar) FROM example
returning
bar
3
您可以使用row_number()
函数:
select t.bar
from (select *, row_number() over (order by bar) as seq
from table
) t
where seq = 2; -- Get the second last bar