美文网首页
Hive笔记-ntile

Hive笔记-ntile

作者: raincoffee | 来源:发表于2017-11-14 10:40 被阅读57次

HIve-ntile
转载:http://blog.itpub.net/28929558/viewspace-1181432/
有时会有这样的需求:如果数据排序后分为三部分,业务人员只关心其中的一部分,如何将这中间的三分之一数据拿出来呢?

这时比较好的选择,就是使用NTILE函数

例:

SQL> select

  2     dept_id

  3    ,sale_date

  4    ,goods_type

  5    ,sale_cnt

  6    ,ntile(3) over (order by sale_cnt desc nulls last)  all_cmp

  7    ,ntile(3) over (partition by dept_id order by sale_cnt desc nulls last) all_dept

  8  from criss_sales

  9  ;

DEPT_ID SALE_DATE GOODS_TYPE SALE_CNT ALL_CMP ALL_DEPT


D02 2014/5/2 G03 900 1 1
D01 2014/4/30 G03 800 1 1
D01 2014/3/4 G00 700 1 1
D02 2014/3/6 G00 500 2 1
D02 2014/4/27 G01 300 2 2
D01 2014/4/8 G01 200 2 2
D02 2014/4/8 G02 100 3 3
D01 2014/5/4 G02 80 3 2
D01 2014/6/12 G01 3 3

可以看到,Ntile函数为各个记录在记录集中的排名计算比例,返回每条记录所在集合比例位置的值。

例如我们关心全公司前三分之一部分的数据,只需选择 ALL_CMP = 1 的数据就可以了
​ 如果只是关心全公司中间的三分之一数据,只需选择 ALL_CMP = 2 的数据就可以了

相关文章

  • Hive笔记-ntile

    HIve-ntile转载:http://blog.itpub.net/28929558/viewspace-118...

  • Hive笔记8-窗口分析函数

    hive分析窗口函数 基础函数 SUM、AVG、MIN、MAX 序列函数 序列函数,NTILE,ROW_NUMBE...

  • Hadoop(二十七)HIVE的高级应用之业绩报表

    一. 涉及到中重点知识 Hive的窗口和分析函数进阶 • NTILE、CUME_DIST、PERCENT_RAN...

  • Hive分析函数

    Hive分析函数 Example: Ntile(分片) 使用场景:计算百分之几的用户的结果 给了用户和每个用户对应...

  • 无标题文章

    Hive 学习笔记 学习笔记 Hive 简介 Hive 是建立在 Hadoop 上的数据仓库基础构架,可以用来进行...

  • Hive编程指南笔记整理

    hive编程指南阅读笔记 1.基础操作 1.1.启动hive HIVE_HOME$ bin/hive 1.2.1....

  • Apache Hive Essentials笔记

    Apache Hive Essentials笔记 1.CASCADE Note: Note that Hive k...

  • Hive 1.2.1 分区和分捅

    1. 借鉴 Hive学习笔记——Hive中的分桶Hive分区和分桶(0925)HIVE表索引,分区和分桶的区别 2...

  • hive笔记

    import:生产机云pos MRTDB 抽取到 hiveexport:hive 导出到 DRTDB中 如果哪天的...

  • HIVE笔记

    常见命令 常用show命令官网:https://cwiki.apache.org/confluence/displ...

网友评论

      本文标题:Hive笔记-ntile

      本文链接:https://www.haomeiwen.com/subject/chuxvxtx.html