impala进阶学习
Posted 桃桃琪的学习日常
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了impala进阶学习相关的知识,希望对你有一定的参考价值。
表名:table_a3
name | score | class |
zhangsan | 80 | 1 |
lisi | 70 | 1 |
wangwu | 80 | 1 |
liuliu | 50 | 2 |
chenqi | 99 | 2 |
zhaosan | 100 | 1 |
窗口函数
rank函数:计算排序时,如果存在相同位次,跳过之后的位次。
dense_rank函数:计算排序时,如果存在相同位次,不跳过之后的位次。
row_number函数:赋予唯一的连续位次。
select name,score,class
,row_number()over(partition by class order by score desc) as rn
from table_a3;
name score class rn
zhaosan 100 1 1
wangwu 80 1 2
zhangsan 80 1 3
lisi 70 1 4
chenqi 99 2 1
liuliu 50 2 2
#order by相同的字段,排序相同,下一顺序跳过
#rank()over(partition by x order by xx)
select name,score,class
,rank()over(partition by class order by score desc) as rn
from table_a3;
name score class rn
zhaosan 100 1 1
wangwu 80 1 2
zhangsan 80 1 2
lisi 70 1 4
chenqi 99 2 1
liuliu 50 2 2
#order by相同的字段,排序相同,下一顺序不跳过
#dense_rank() over (partition by x order by xx)
select name,score,class
,dense_rank()over(partition by class order by score desc) as rn
from table_a3;
name score class rn
zhaosan 100 1 1
wangwu 80 1 2
zhangsan 80 1 2
lisi 70 1 3
chenqi 99 2 1
liuliu 50 2 2
结果和ORDER BY相关,默认为升序;
以上是关于impala进阶学习的主要内容,如果未能解决你的问题,请参考以下文章
我的C语言学习进阶之旅解决 Visual Studio 2019 报错:错误 C4996 ‘fscanf‘: This function or variable may be unsafe.(代码片段
我的OpenGL学习进阶之旅NDK开发中find_library查找的系统动态库在哪里?
我的OpenGL学习进阶之旅NDK开发中find_library查找的系统动态库在哪里?
我的Android进阶之旅NDK开发之在C++代码中使用Android Log打印日志,打印出C++的函数耗时以及代码片段耗时详情