Hive案例总结

Hive案例总结:

  1. 处理日期的两种方式:
    1. substring(orderdate,1,7) = ‘2017-04’
    2. year(orderdate) = 2017 and month(orderdate) = 04

不能写windows字句的函数:

  1. 所有的排名函数
  2. last_value
  3. first_value

两种特殊情况

当指定ORDER BY缺少WINDOW子句时,WINDOW规范默认为RANGE BETWEEN UNBOUNDED PRECEDING AND CURRENT ROW。

如果同时缺少ORDER BY和WINDOW子句,则WINDOW规范默认为ROW BETWEENUND UNBOUNDED PRECEDING和UNBOUNDED FOLLOWING。

以下函数在over()里面只能分区和排序,不能自定义窗口大小了,也就是不能再写window字句

排序分析函数 都不能写 例如: Rank, NTile, DenseRank, CumeDist, PercentRank.

Lead 和 Lag不能写

排名函数

RANK() 排序相同时会重复,会跳号

DENSE_RANK() 排序相同时会重复,不会跳号

ROW_NUMBER() 会根据顺序计算

FIRST_VALUE (col,true/false):当前窗口下的第一个值,第二个参数为true,跳过空值
LAST_VALUE (col,true/false):当前窗口下的最后一个值,第二个参数为true,跳过空值
NTILE(n):把有序窗口的行分发到指定数据的组中,各个组有编号,编号从1开始,对于每一行,NTILE返回此行所属的组的编号。注意:n必须为int类型。

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值