语法:row_number() over (partition by 字段a order by 计算项b desc ) rank

--这里rank是别名

partition by:类似hive的建表,分区的意思;

order by :排序,默认是升序,加desc降序;

这里按字段a分区,对计算项b进行降序排序

实例:

要取top10品牌,各品牌的top10渠道,各品牌的top10渠道中各渠道的top10档期

1、取top10品牌

select 品牌,count/sum/其它() as num  from table_name order by num limit 10;

2、 取top10品牌下各品牌的top10渠道

select

a.*

from

(

select 品牌,渠道,count/sum/其它() as num row_number() over (partition by 品牌 order by num desc ) rank

from table_name

where 品牌限制条件

group by 品牌,渠道

)a

where

a.rank<=10

3、 取top10品牌下各品牌的top10渠道中各渠道的top10档期

select

a.*

from

(

select 品牌,渠道,档期,count/sum/其它() as num row_number() over (partition by 品牌,渠道 order by num desc ) rank

from table_name

where 品牌,渠道 限制条件

group by 品牌,渠道,档期

)a

where

a.rank<=10

Hive中的Row_Number()使用的更多相关文章

  1. hive 中窗口函数row_number,rank,dense_ran,ntile分析函数的用法

    hive中一般取top n时,row_number(),rank,dense_ran()这三个函数就派上用场了, 先简单说下这三函数都是排名的,不过呢还有点细微的区别. 通过代码运行结果一看就明白了. ...

  2. mysql分组排序取最大值所在行,类似hive中row_number() over partition by

    如下图, 计划实现 :按照 parent_code 分组, 取组中code最大值所在的整条记录,如红色部分.(类似hive中: row_number() over(partition by)) sel ...

  3. Hive中row_number()、dense_rank()、rank()的区别

    摘要 本文对Hive中常用的三个排序函数row_number().dense_rank().rank()的特性进行类比和总结,并通过笔者亲自动手写的一个小实验,直观展现这三个函数的特点. 三个排序函数 ...

  4. Hive中的窗口函数

    简介 本文主要介绍hive中的窗口函数.hive中的窗口函数和sql中的窗口函数相类似,都是用来做一些数据分析类的工作,一般用于olap分析 概念 我们都知道在sql中有一类函数叫做聚合函数,例如su ...

  5. hive中 udf,udaf,udtf

    1.hive中基本操作: DDL,DML 2.hive中函数 User-Defined Functions : UDF(用户自定义函数,简称JDF函数)UDF: 一进一出  upper  lower ...

  6. Week08_day01 (Hive开窗函数 row_number()的使用 (求出所有薪水前两名的部门))

    数据准备: 7369,SMITH,CLERK,7902,1980-12-17,800,null,20 7499,ALLEN,SALESMAN,7698,1981-02-20,1600,300,30 7 ...

  7. ORACLE 中的 ROW_NUMBER() OVER() 分析函数的用法

    ORACLE 中的 ROW_NUMBER() OVER() 分析函数的用法 ROW_NUMBER() OVER(partition by col1 order by col2) 表示根据col1分组, ...

  8. SparkSQL读取Hive中的数据

    由于我Spark采用的是Cloudera公司的CDH,并且安装的时候是在线自动安装和部署的集群.最近在学习SparkSQL,看到SparkSQL on HIVE.下面主要是介绍一下如何通过SparkS ...

  9. hive中rcfile格式(收藏文)

    首先声明,此文是属于纯粹收藏文,感觉讲的很不错. 本文介绍了Facebook公司数据分析系统中的RCFile存储结构,该结构集行存储和列存储的优点于一身,在MapReduce环境下的大规模数据分析中扮 ...

随机推荐

  1. TCP/IP协议(7):应用层

    应用层上协议有DNS.DHCP.HTTP.SSL/TLS.FTP.Telnet等. 1.DNS域名解析 DNS服务器用来解析域名从而获得对应IP地址,我们在对网络进行设置的时候如果DNS服务器没有设置 ...

  2. s5-14 链路状态路由选择

    为什么DV逐渐让位于LS? DV  站的不高,看得不远  完全相信邻居 LS  想办法站得高,看更远  多高.多远?  怎么做? 链路状态路由(Link State) 主要思想 发现 它的邻 ...

  3. JMeter压力测试及服务器状态监控教程

    转载自:https://blog.csdn.net/cbzcbzcbzcbz/article/details/78023327 前段时间公司需要对服务器进行压力测试,包括登录前的页面和登录后的页面,主 ...

  4. 主机网络ping: unknown host baidu.com问题解决

    本机环境: 系统:Centos 网络:NAT 虚拟机之前一直都可以连外网,但最近不能连了,现状如下: [root@vhost03 ~]# ping baidu.comping: unknown hos ...

  5. SSH 等效性问题 总提示输入密码问题

    家目录权限问题 .chmod 700 /home/.. 得到的教训就是没事儿不要乱修改家目录权限,一时方便,可能在别的地方载跟头 ~~ 浪费好许时间 哎

  6. 中国剩余定理 (POJ 1006)

    http://poj.org/problem?id=1006      在<孙子算经>中有这样一个问题:“今有物不知其数,三三数之剩二(除以3余2),五五数之剩三(除以5余3),七七数之剩 ...

  7. 【python】Python 中的 classmethod 和 staticmethod

    Python 中的 classmethod 和 staticmethod 有什么具体用途? 推荐地址:http://www.cnblogs.com/wangyongsong/p/6750454.htm ...

  8. c#运用反射获取属性和设置属性值

    /// <summary> /// 获取类中的属性值 /// </summary> /// <param name="FieldName">&l ...

  9. [leetcode 12] Inter to Roman

    1 题目: Given an integer, convert it to a roman numeral. Input is guaranteed to be within the range fr ...

  10. [ASE][Daily Scrum]11.12

    这几天Jiafan同学回学校去了,服务器的问题暂时未解决.继续搭建服务器中: View Shilin Liu 修复tank的错位问题 产生残缺地图         Client Jiafan Zhu( ...