首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 数据库 > SQL Server >

求SQL话语:将多条记录的值合并到一条记录

2013-07-01 
求SQL语句:将多条记录的值合并到一条记录表t有如下记录:工单号操作者a1张三a1王二 a1李四现在要得到查询结

求SQL语句:将多条记录的值合并到一条记录
表t有如下记录:

工单号    操作者
a1       张三
a1       王二 
a1       李四

现在要得到查询结果:
工单号    操作者
a1       张三、王二、李四


SQL语句应该如何写?
谢谢先!


[解决办法]
select 工单号,
操作者=stuff((select ','+操作者
        from table_name
       where 工单号=t.工单号
        for xml path('')),1,1,'')
from table_name t
group by 工单号
[解决办法]
select 工单号,
操作者=REPLACE(stuff((select ','+操作者
        from test1
       where 工单号=t.工单号
        for xml path('')),1,1,''),',','、') --楼主要求用逗号,稍加修改
from test1 t
group by 工单号

[解决办法]
如果是2000库就需要自定义函数

[解决办法]
SQL stuff  用法:删除指定长度的字符,并在指定的起点处插入另一组字符。
SQL SERVER FOR XML PATH用法.学习了!!
[解决办法]
select 工单号,
操作者=stuff((select ','+操作者
        from table_name
       where 工单号=t.工单号
        for xml path('')),1,1,'')
from table_name t
group by 工单号
[解决办法]
字符串合并与拆分

http://qianzhang.blog.51cto.com/317608/1204630

热点排行