【问题标题】:GBQ - Merge cells of a column across rowsGBQ - 跨行合并列的单元格
【发布时间】:2018-06-12 18:28:13
【问题描述】:

我有一个像这样的数据表

start_date | end_date | string

date x   |  date y   |  apple

date x  |   date y  |   orange

date z  |   date y   |  grape

如果 start_date 和 end_date 跨行相同,我想合并字符串列。所以输出看起来像这样

start_date | end_date | string

date x   |  date y  | apple/orange

date z   |  date y |  grape

我正在使用 Google 大查询 SQL。任何帮助将不胜感激。 谢谢。

【问题讨论】:

标签: sql google-bigquery


【解决方案1】:

以下是 BigQuery 标准 SQL

#standardSQL
SELECT start_date, end_date, STRING_AGG(str, '/') str
FROM `project.dataset.table`
GROUP BY 1, 2

【讨论】:

    【解决方案2】:

    你想要GROUP_CONCAT

    select start_date, end_date, GROUP_CONCAT(string) as string
    from table t
    group by start_date, end_date;
    

    【讨论】:

      猜你喜欢
      • 2012-07-20
      • 1970-01-01
      • 1970-01-01
      • 2011-04-22
      • 2018-08-06
      • 1970-01-01
      • 2014-08-20
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多