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

SQL查询优化:将用户多行任务ID合并为单行展示

优化SQL实现用户任务ID合并展示

你需要将同一用户的多个任务ID合并到单行展示,原查询因分组条件包含tid导致同一用户生成多条记录,同时拼接的分隔符和开头冗余问题也需要调整,以下是优化后的SQL:

SELECT 
    w.[user] AS Username,
    STUFF((SELECT ', ' + d.taskid 
           FROM tasks d 
           WHERE d.guid = w.guid 
           FOR XML PATH('')), 1, 2, '') AS TaskId
FROM taskuser w
WHERE w.type = 'pm0'
GROUP BY w.[user], w.guid

关键优化点:

  • 调整分组条件:原查询GROUP BY w.user, w.tid会按用户+任务ID分组,导致同一用户出现多条记录,改为按w.[user], w.guid分组(确保每个用户对应唯一的关联标识guid),保证每行对应一个用户
  • 处理冗余分隔符:使用STUFF函数去掉子查询拼接后字符串开头的, ,避免结果出现多余的前置分隔符
  • 匹配期望格式:将分隔符从; 改为, ,与你期望的输出格式一致

执行上述SQL后,将得到如下结果:

UsernameTaskId
FranePM0-10003
JordanPM0-10004, PM0-10005, PM0-10006

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.08.11 12:40:25