BigQueryStructAggregation
创始人
2024-12-12 19:30:19
0

在BigQuery中使用STRUCT类型进行聚合操作。

假设我们有一个包含以下列的表:

CREATE TABLE my_table (
  id INT64,
  device STRING,
  event_timestamp TIMESTAMP,
  event_data STRUCT
);

要按设备汇总计算foo和bar的平均值,我们可以使用以下查询:

SELECT
  device,
  AVG(event_data.foo) AS avg_foo,
  AVG(event_data.bar) AS avg_bar
FROM
  my_table
GROUP BY
  device;

此查询将返回一个表,其中每个设备都有一个平均foo和一个平均bar值。这些值存储在STRUCT类型中,可以使用"."运算符访问。

注意,在使用STRUCT类型进行聚合操作时,每个STRUCT字段都需要单独处理。在上面的示例中,我们分别计算了事件数据中的每个字段的平均值。

完整示例代码如下:

CREATE TABLE my_table (
  id INT64,
  device STRING,
  event_timestamp TIMESTAMP,
  event_data STRUCT
);

INSERT INTO my_table VALUES
  (1, 'device1', TIMESTAMP '2022-01-01 00:00:00', STRUCT(10, 'hello')),
  (2, 'device2', TIMESTAMP '2022-01-02 00:00:00', STRUCT(20, 'world')),
  (3, 'device1', TIMESTAMP '2022-01-03 00:00:00', STRUCT(30, 'foo')),
  (4, 'device2', TIMESTAMP '2022-01-04 00:00:00', STRUCT(40, 'bar'));

SELECT
  device,
  AVG(event_data.foo) AS avg_foo,
  AVG(event_data.bar) AS avg_bar
FROM
  my_table
GROUP BY
  device;

相关内容

热门资讯

6分钟详情!星悦福建麻将到底有... 6分钟详情!星悦福建麻将到底有没有挂,线上德州辅助工具有哪些(详细透视辅助助手教程)1、每一步都需要...
2分钟规律!财神十三张有辅助吗... 2分钟规律!财神十三张有辅助吗,wepoke软件透明挂下载(详细透视辅助脚本教程)1、让任何用户在无...
三分钟辅助挂!嫩江和和麻将真有... 三分钟辅助挂!嫩江和和麻将真有挂吗,wpk长期盈利打法(详细透视辅助神器教程)是一款可以让一直输的玩...
2分钟教程!艾牛娱乐有挂吗,微... 2分钟教程!艾牛娱乐有挂吗,微扑克有辅助(详细透视辅助工具教程)科技教程也叫必备教程,这是一款功能强...
五分钟技巧!福建十三水辅助器下... WePoker透视辅助版本稳定性对比与推荐‌:五分钟技巧!福建十三水辅助器下载,德扑之星专业代打(详...
1分钟详情!中至余干可以装外 ... 《1分钟详情!中至余干可以装外 挂么,德扑牌型胜率(详细透视辅助神器教程)》 中至余干可以装外 挂么...
4分钟介绍!渤海麻将有挂吗,p... WePoker透视辅助工具核心要点解析‌,4分钟介绍!渤海麻将有挂吗,pokermaster有德州(...
4分钟技巧!乐逍遥跑胡子软件,... 4分钟技巧!乐逍遥跑胡子软件,德扑之星能看到底牌(详细透视辅助黑科技教程);亲真的是有正版授权,小编...
一分钟方法!楚天游赤壁打滚辅助... 一分钟方法!楚天游赤壁打滚辅助器,aapoker到底有挂(详细透视辅助助手教程);人气非常高,ai更...
十分钟教程!指尖跑得快小程序辅... 十分钟教程!指尖跑得快小程序辅助,德州wpk德州真的(详细透视辅助神器教程)1、许多玩家不知道指尖跑...