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

使用T-SQL合并分散在不同行的列数据至单行的求助

T-SQL实现同一分组下多行数据合并为单行

针对你的需求,直接通过GROUP BY配合聚合函数就能解决——按Column A和Column B分组,把每组里Column C、D、E的非NULL值合并到同一行即可。

假设你的表名为YourTable,执行以下T-SQL语句就能得到目标结果:

SELECT 
    ColumnA,
    ColumnB,
    MAX(ColumnC) AS ColumnC,
    MAX(ColumnD) AS ColumnD,
    MAX(ColumnE) AS ColumnE
FROM YourTable
GROUP BY ColumnA, ColumnB;

代码说明

  • GROUP BY ColumnA, ColumnB:指定按这两列分组,确保相同Column A和Column B的行被归为一组。
  • MAX(ColumnC):聚合函数MAX会自动忽略NULL值,取分组内Column C的非NULL有效值,同理处理Column D和Column E。因为你的原数据中,同一分组下每个列只有一个非NULL值,所以MAX能准确获取到对应的值。

如果后续遇到同一分组下某列有多个非NULL值的情况,可以根据实际需求调整聚合逻辑,但当前场景下这个方法完全适用。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.06.27 13:15:58