[英]How to get values from BigQuery nested Record type
我有一个 BQ 表,其中有一列RECORD
类型,如下所示:
tags
|_ sub_tags
当我做:
SELECT tags.sub_tags FROM `MY_TABLE`
我明白了:
排 | sub_tags.array_element |
---|---|
1个 | :某物 |
:something_else | |
搞什么鬼 | |
2个 | 更多东西 |
3个 | and_more_stuff |
如何获取值或检查:something
是否存在于STRUCT
中?
看看这些解决方案是否有帮助:假定您的源表中有一个带有 tags.sub_tags 的结构。
WITH yourTable AS (
SELECT struct(['one', 'two','three'] AS sub_tags) as tags
union all
SELECT struct(['one', 'four','three'] AS sub_tags) as tags
)
SELECT * FROM `yourTable`
where 'two' in unnest(tags.sub_tags)
SELECT * except(value) FROM `yourTable`, unnest(tags.sub_tags) as value
where value = 'two'
这些是 arrays 的一些很好的参考: https://cloud.google.com/bigquery/docs/reference/standard-sql/arrays
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.