![](https://img-blog.csdnimg.cn/20201014180756928.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
数据仓库
幸运的小新粉
将相本无种,男儿当自强!
展开
-
Hive窗口函数常用记录
窗口函数通常是对组内数据进行处理,所以一定需要分组操作(partition by) 通常的语法是selectWINDOW(a.val)over(PARTITION by a.col1 order by a.col2 asc [rows BETWEEN xxx PRECEDING and CURRENT ROW])from a1、排序 Rank()、Dense_Rank()、Row_Number()这些计算分组排序的用的是比较多的,一般都需要在窗口函数后进行order by2、聚合函数 sum原创 2021-01-04 16:40:59 · 270 阅读 · 0 评论 -
hive报错return code 2 from org.apache.hadoop.hive.ql.exec.mr.MapRedTask
场景:计算一年中每一天的数据,每一天的取值是前一年或者半年的平均值,所以我有两张临时表,第一张存放主体的一年中每一天的数据,第二张存放主体近两年的每一天对应的数据,第一张表左连接第二张表,这样子进行窗口函数计算即可。select h1.*,h3.volume,h3.vwap, avg(h3.turnoverval)over(PARTITION by h1.TRADINGITEMID order by h1.natualday asc rows BETWEEN 364 PRECEDING and原创 2021-01-04 16:14:17 · 1841 阅读 · 1 评论 -
拉链表的实现过程
拉链表的优势我就不说了,具体请参考百度百科:拉链表-百度百科推荐一个比较详细的参考文章:拉链表示例主要总结一下实现过程:分析:拉链表就是用来存储变化的数据的,每一份数据都有对应的有效期,我们需要进行的操作就是将变动的数据进行新增,同时将变动对应的前一条数据的有效期进行变更。说明:一般都是今天处理昨天的数据,本文所说的当天为所处理的数据的产生的当天。在这之前需要熟悉一下需要用到的表:表1:订单表(记录原始的数据)表2:增量数据表(记录每日变更的数据)表3:历史拉链表(我们要得到的就是这张表原创 2020-11-19 15:20:19 · 9317 阅读 · 0 评论