【sql进阶】SQL Server 将某一列的值拼接成字符串
今天在统计报表的时候有这么一个需求,将一列字符串拼接成一行,然后展示到新的列中。
每一项的服务列表如下:
最终想要的结果是
sql如下:
select AuxTypeName + ',' from ( SELECT DISTINCT(AuxTypeName) FROM _VIPHall_Link_AuxType LEFT JOIN dbo.[_VIPHall] ON [_VIPHall_Link_AuxType].VIPHallID = [_VIPHall].VIPHallID LEFT JOIN dbo._Dim_VIPHall_AuxType ON [_Dim_VIPHall_AuxType].AuxTypeID = [_VIPHall_Link_AuxType].AuxTypeID WHERE [_VIPHall].VIPHallID = 157 ) AS tmp for xml path('')
整理出来也就是
select( select CAST(字段 as varchar)+',' from 表 for xml path('') ) as A
搞定!
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】凌霞软件回馈社区,博客园 & 1Panel & Halo 联合会员上线
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】博客园社区专享云产品让利特惠,阿里云新客6.5折上折
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步