您的位置:首页 > 数据库

SQL将一列多行数据合并

2016-11-29 13:54 218 查看
SQL2005以上

用到两个方法 stuff 和 for xml path

stuff :

stuff(param1, startIndex, length, param2)

说明:将param1中自startIndex(SQL中都是从1开始,而非0)起,删除length个字符,然后用param2替换删掉的字符

for xml path:

它就是将查询结果集以XML形式展现

l两个方法组合就可以将多行合并

具体的SQL:

SELECT DISTINCT

        VisitID ,

        STUFF(( SELECT  ',' + DiagDesc

                FROM    dbo.Pat_Diagnose

                WHERE   VisitID = a.VisitID

              FOR

                XML PATH('')

              ), 1, 1, '') AS DiagDesc

FROM    dbo.Pat_Diagnose AS a;
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: