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

合并行中重复ID值并拼接对应Service列内容

合并重复ID并拼接对应Service列的实现方案

以下是几种常用工具的实现方法,按需选择:

Excel 实现

方法1:数组公式(TEXTJOIN+IF)

假设数据在A2:B10区域,ID列在A列,Service列在B列:

  1. 在空白单元格(如C2)输入公式:
    =TEXTJOIN(", ", TRUE, IF($A$2:$A$10=A2, $B$2:$B$10, ""))
  2. 按下Ctrl+Shift+Enter触发数组公式,下拉填充至所有行
  3. 选中A、C列,删除重复的ID行即可

方法2:Power Query(更高效)

  1. 选中数据区域,点击「数据」选项卡 → 「从表格/区域」导入Power Query编辑器
  2. 在编辑器中点击「转换」选项卡 → 「分组依据」
  3. 分组列选择ID,新列名设为Combined_Services,操作选择「合并列」,分隔符选你需要的(如逗号+空格)
  4. 点击确定后,关闭并上载数据到Excel表格

SQL 实现

根据你使用的数据库选择对应语句:

  • MySQL/MariaDB:
    SELECT ID, GROUP_CONCAT(Service SEPARATOR ', ') AS Combined_Services
    FROM your_table
    GROUP BY ID;
    
  • SQL Server(2017+):
    SELECT ID, STRING_AGG(Service, ', ') AS Combined_Services
    FROM your_table
    GROUP BY ID;
    
  • Oracle(11gR2+):
    SELECT ID, LISTAGG(Service, ', ') WITHIN GROUP (ORDER BY Service) AS Combined_Services
    FROM your_table
    GROUP BY ID;
    

Python Pandas 实现

适用于处理大规模数据:

import pandas as pd

# 读取数据(根据文件类型选择read_csv或read_excel)
df = pd.read_excel('your_data_file.xlsx')
# 按ID分组,拼接Service列
merged_df = df.groupby('ID')['Service'].agg(', '.join).reset_index()
# 输出或保存结果
print(merged_df)
merged_df.to_excel('merged_result.xlsx', index=False)

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.07.20 15:08:11