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

同一KEY多行数据转换为单行多列的技术实现需求

解决方案

1. SQL 实现(适用于数据库环境)

如果数据存储在关系型数据库中,不同数据库可用对应函数拼接Dim值:

MySQL 示例

SELECT 
    KEY,
    GROUP_CONCAT(Dim SEPARATOR ' ') AS Combined_Dims
FROM 
    your_table_name
GROUP BY 
    KEY;

注意:MySQL默认GROUP_CONCAT有长度限制,若拼接内容过长,可临时调整参数:SET SESSION group_concat_max_len = 1000000;

PostgreSQL 示例

SELECT 
    "KEY",
    STRING_AGG(Dim, ' ') AS Combined_Dims
FROM 
    your_table_name
GROUP BY 
    "KEY";

2. Python Pandas 实现(适用于本地数据文件处理)

针对CSV/Excel等本地文件,用Pandas可高效处理40万条数据规模:

import pandas as pd

# 读取数据(以CSV为例)
df = pd.read_csv('your_data.csv')

# 按KEY分组拼接Dim值
merged_df = df.groupby('KEY')['Dim'].apply(' '.join).reset_index()

# 输出为示例格式的纯文本
for _, row in merged_df.iterrows():
    print(f"{row['KEY']} {row['Dim']}")

# 也可导出到文件
merged_df.to_csv('merged_result.csv', index=False, header=False)

3. Shell 脚本实现(适用于Linux/Unix环境下的文本文件)

如果是空格分隔的纯文本文件,用awk命令快速处理:

awk '{key=$1; dim=$3; arr[key] = arr[key] " " dim} END {for(k in arr) print k arr[k]}' your_data.txt | sed 's/^ //'

解释:awk遍历行提取KEY和Dim并拼接,sed去除拼接后开头的多余空格

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.07.13 05:12:44