You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何在SQL/BigQuery中按ID合并Name并聚合Count字段?

解决方案:按ID聚合并处理NULL Name与求和Count

原始数据表

IDNameCount
1John1
1NULL10
2Sam11
3Mike13
3NULL15
4Tom80
5Null90
5Clare10
6NULL10

期望输出表

IDNameCount
1John11
2Sam11
3Mike28
4Tom80
5Clare100
6NULL10

BigQuery SQL实现

SELECT
  ID,
  COALESCE(MAX(Name), NULL) AS Name,
  SUM(Count) AS Count
FROM
  `your-project.your-dataset.your-table`
GROUP BY
  ID
ORDER BY
  ID;

逻辑说明

  • 分组聚合:按ID分组,将同一ID的所有记录合并处理。
  • Name字段处理:MAX(Name)会自动忽略NULL值,提取分组内唯一的非NULL Name;如果分组内所有Name都是NULL,MAX(Name)返回NULL,COALESCE会保留这个NULL,满足“无有效Name则保留NULL”的要求。
  • Count求和:SUM(Count)对同一ID下的所有Count值累加,不管对应Name是否为NULL,符合需求中“同ID下Count字段求和”的规则。
  • 排序:最后按ID升序排列,与期望输出的顺序一致。

内容的提问来源于stack exchange,提问作者Shan

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.08.15 21:55:21