0

是否可以在 BigQuery 的数组中找到元素的索引?

这个想法是找到一个元素的索引来抓取下面一行中的不同元素。

因此,例如,对于这种情况,我需要找到“status2”的索引来获取 status2 之后状态的相应输入日期,即“2021-03-20”。

图片1

问题是,状态可以从状态2跳到状态4或状态5等等,所以我不知道下一个状态会是什么,但我知道我需要的日期永远是状态2之后的日期。

有没有办法在查询中做到这一点?

4

1 回答 1

2

您可以为此使用 OFFSET,如下例所示

select element, date, status
from your_table t, 
t.status status with offset as offset1
left join t.entered_date date with offset as offset2
on offset1 + 1 = offset2
where status = 'status2'    

如果应用于您问题中的样本数据 - 输出是

在此处输入图像描述

希望您可以将上述技术应用于您拥有的任何确切用例

于 2022-01-27T21:31:05.607 回答