返回Hive

时间:2015-09-01 15:34:51

标签: arrays hive

我有一系列发布的产品版本,如下所示:

version_release    
[1, 2, 5, 7, 8, 9]

我希望能够在知道相关版本的情况下找到该产品的下一个(或上一个)版本。

例如,我正在查看版本7,下一个版本是8,之前的版本是5。

在Hive中,有没有办法

  1. 找到" 7"的索引在数组(4)
  2. 递增(或递减)该索引以返回" 8" (索引5)或" 5" (指数3),分别?

1 个答案:

答案 0 :(得分:3)

操作数组 in situ 不是非常SQL。您可以尝试" PosExplode()"首先是该列,每个数组值生成1条记录,然后将相邻位置的JOIN值(1对2,2对3 ...)加以获得成功感。

或者BrickHouse library可能对您的用例更有效。