使用嵌套字段旋转的 bigquery

Posted

技术标签:

【中文标题】使用嵌套字段旋转的 bigquery【英文标题】:bigquery pivoting with nested field 【发布时间】:2019-11-01 22:30:43 【问题描述】:

我有一个带有架构的 bigquery 表:

我想要这个结果:

flow_timestamp, channel_name, number_of_digits
2019-10-31 15:31:15, channel_name_1, 3,
2019-10-31 15:31:15, channel_name_2, 4,
:
:

我的查询:SELECT flow_timestamp, timeseries.channel_name, MAX(IF(channel_properties.key = 'number_of_digits', channel_properties.value, NULL)) AS number_of_digits FROM my_table , unnest(timeseries.channel_properties) as channel_properties

我已经尝试过这里显示的相同技术, How to aggregate multiple rows into one in BigQuery?

但出现错误SELECT list expression references column flow_timestamp which is neither grouped nor aggregated at [1:8]

【问题讨论】:

【参考方案1】:

以下是 BigQuery 标准 SQL

#standardSQL
SELECT 
  flow_timestamp, 
  timeseries.channel_name, 
  ( SELECT MAX(IF(channel_properties.key = 'number_of_digits', channel_properties.value, NULL)) 
    FROM UNNEST(timeseries.channel_properties) AS channel_properties
  ) AS number_of_digits 
FROM my_table

【讨论】:

您好,谢谢。实际上,我的表有更多的嵌套字段。我有一个有 5 层的字段。我想知道这是否是一个好习惯,因为它使查询变得非常复杂。但另一方面,它避免了存储重复信息。 发布包含所有相关细节的新问题,以便我们能够回答 好的,谢谢。 ***.com/questions/58684318/…

以上是关于使用嵌套字段旋转的 bigquery的主要内容,如果未能解决你的问题,请参考以下文章

ESP8266嵌套Cube3D旋转动画(嵌套)

嵌套视图不遵守旋转父级的约束(变换)

使用嵌套字段中的值更新字段

使用复选框以嵌套形式为嵌套属性预定义字段

我可以使用 FFmpeg 为视频流设置旋转字段吗?

使用 Django Rest Framework 序列化程序发布到嵌套字段