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

如何将相同ID多行数据的对应列值合并为逗号分隔形式

合并相同ID的多行数据列值(逗号分隔)

场景说明

原始数据:同一ID对应多行不同的列值
目标效果:同一ID仅保留一行,对应列值用逗号合并到同一单元格/字段

Excel实现方法

如果使用Excel(2019及以后版本或365),可以用TEXTJOIN函数快速实现:

  1. 假设ID列是A列,需要合并的列是B列
  2. 在C2单元格输入公式:
    =TEXTJOIN(",", TRUE, IF($A$2:$A$10=A2, $B$2:$B$10, ""))
    
    (注:Excel旧版本需按Ctrl+Shift+Enter作为数组公式执行,新版直接回车即可)
  3. 下拉填充公式到所有行,最后删除重复的ID行,仅保留每个ID对应的合并结果

SQL实现方法

不同数据库的合并函数存在差异,以下是主流数据库的写法:

  • MySQL/MariaDB:使用GROUP_CONCAT函数
    SELECT 
      ID, 
      GROUP_CONCAT(目标列名 SEPARATOR ',') AS 合并列名
    FROM 你的表名
    GROUP BY ID;
    
  • SQL Server 2017+:使用STRING_AGG函数
    SELECT 
      ID, 
      STRING_AGG(目标列名, ',') AS 合并列名
    FROM 你的表名
    GROUP BY ID;
    
  • Oracle 11gR2+:使用LISTAGG函数
    SELECT 
      ID, 
      LISTAGG(目标列名, ',') WITHIN GROUP (ORDER BY 目标列名) AS 合并列名
    FROM 你的表名
    GROUP BY ID;
    

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.08.11 18:25:22