Google bigquery BigQuery-将多个行和列连接成一行
我有这样的专栏Google bigquery BigQuery-将多个行和列连接成一行,google-bigquery,Google Bigquery,我有这样的专栏 id|name | Country 1|John | usa 1|Tom | Canada 1|Bob | Italy 2|Jack | China 2|Tim | USA 我需要像这样的输出 id|Text 1| John USA , Tom Canada , Bob Italy 2|Jack China, Tim USA 下面是BigQuery标准SQL #standardSQL SELECT id, STRING_AGG(CONCAT(name, ' ' ,
id|name | Country
1|John | usa
1|Tom | Canada
1|Bob | Italy
2|Jack | China
2|Tim | USA
我需要像这样的输出
id|Text
1| John USA , Tom Canada , Bob Italy
2|Jack China, Tim USA
下面是BigQuery标准SQL
#standardSQL
SELECT id, STRING_AGG(CONCAT(name, ' ' , country)) text
FROM `project.dataset.table`
GROUP BY id
您可以使用问题中的示例数据测试、播放上述内容,如下例所示
#standardSQL
WITH `project.dataset.table` AS (
SELECT 1 id, 'John' name, 'Usa' country UNION ALL
SELECT 1, 'Tom', 'Canada' UNION ALL
SELECT 1, 'Bob', 'Italy' UNION ALL
SELECT 2, 'Jack', 'China' UNION ALL
SELECT 2, 'Tim', 'USA'
)
SELECT id, STRING_AGG(CONCAT(name, ' ' , country)) text
FROM `project.dataset.table`
GROUP BY id
有输出
Row id text
1 1 John Usa,Tom Canada,Bob Italy
2 2 Jack China,Tim USA
下面是BigQuery标准SQL
#standardSQL
SELECT id, STRING_AGG(CONCAT(name, ' ' , country)) text
FROM `project.dataset.table`
GROUP BY id
您可以使用问题中的示例数据测试、播放上述内容,如下例所示
#standardSQL
WITH `project.dataset.table` AS (
SELECT 1 id, 'John' name, 'Usa' country UNION ALL
SELECT 1, 'Tom', 'Canada' UNION ALL
SELECT 1, 'Bob', 'Italy' UNION ALL
SELECT 2, 'Jack', 'China' UNION ALL
SELECT 2, 'Tim', 'USA'
)
SELECT id, STRING_AGG(CONCAT(name, ' ' , country)) text
FROM `project.dataset.table`
GROUP BY id
有输出
Row id text
1 1 John Usa,Tom Canada,Bob Italy
2 2 Jack China,Tim USA