我有一个嵌套的重复结构,重复结构的长度是可变的。例如,它可能是一个具有重复结构的人对象,该结构包含该人居住过的城市。我想找到该列表中的最后一项,以查找当前居住的城市人。有没有简单的方法可以做到为此,我尝试查看 jsonpath 函数,但我不确定如何将它与“内部”一起使用。有什么帮助吗?
最佳答案
SELECT
FIRST(cell.value) within record ,
LAST(cell.value) within record
FROM [publicdata:samples.trigrams]
where ngram = "! ! That"
2) 或者如果你想要更高级的东西,你可以使用 POSITION
POSITION(field)
- 返回字段在一组重复字段中基于一个的顺序位置。
您可以检查三元组中的示例(单击“详细信息”以查看展开的架构) https://bigquery.cloud.google.com/table/publicdata:samples.trigrams?pli=1
当您运行 POSITION 时,您会得到该字段的顺序。
SELECT
ngram,
cell.value,
position(cell.volume_count) as pos,
FROM [publicdata:samples.trigrams]
where ngram = "! ! That"
现在您已经有了位置,您可以查询最后一个。
关于json - 如何在 bigquery 的重复结构中查找最后一项,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/28557636/