配置单元中的sql计算列

zf2sa74q  于 2021-06-26  发布在  Hive
关注(0)|答案(1)|浏览(297)

我有这个表,我想让计算列从最右边。

我的逻辑如下:

For all IDs 
   For all rows 
     IF (delta <= 2 OR delta = NULL) { "Observation " + counter' }
     ELSE { counter +1; "Observation " + counter; }
   reset counter to 1

但是我可以用sql翻译

af7jpaap

af7jpaap1#

您可以使用窗口函数执行此操作:

select t.*,
       sum(case when delta > 2 then 1 else 0 end) over (partition by id order by time end) + 1
from t;

这会产生一个数字。你可以随意构造这个字符串。

相关问题