以下是在BigQuery中对数组进行分组的代码示例:
-- 创建示例表格
CREATE TABLE my_table (
id INT64,
names ARRAY
);
-- 插入示例数据
INSERT INTO my_table (id, names)
VALUES (1, ['John', 'Jane']),
(2, ['Alice', 'Bob']),
(3, ['Tom', 'Jerry']);
-- 使用UNNEST和GROUP BY对数组进行分组
SELECT name, COUNT(*) as count
FROM my_table, UNNEST(names) as name
GROUP BY name;
上述代码中,首先我们创建了一个名为my_table的表格,并插入了一些示例数据。然后,使用UNNEST函数将数组拆分为单独的行,并将其与原始表格的其他列一起使用。最后,使用GROUP BY对拆分后的行进行分组,并计算每个组的数量。
此代码示例将输出以下结果:
+-------+-------+
| name | count |
+-------+-------+
| John | 1 |
| Jane | 1 |
| Alice | 1 |
| Bob | 1 |
| Tom | 1 |
| Jerry | 1 |
+-------+-------+
这是每个名字出现的次数。