当前位置: 代码迷 >> SQL >> MSSQL-字符串分开与列记录合并成一行混合使用
  详细解决方案

MSSQL-字符串分开与列记录合并成一行混合使用

热度:141   发布时间:2016-05-05 09:40:24.0
MSSQL-字符串分离与列记录合并成一行混合使用

    一般我们在数据库的表字段存储字典Id,如果有多个的话一般是用,或分隔符分隔(12,14),列表显示的时候是显示字典名,那如果要在数据库将字典Id转成用户看得懂的字典名,该怎么办呢?

    我们这时候可以结合之前说到的 字符串分离(Split函数) 列记录合并成一行 这两篇文章来完成上述功能。

 

SELECT  STUFF(( SELECT  ',' + d.Name                FROM    dbo.fn_SplitStr(feild, ',') AS s                JOIN    dbo.tb_Dictionary AS d ON d.ID = s.ID              FOR                XML PATH('')              ), 1, 1, '')FROM    table1

     就是这么简单,如果不清楚 FOR XML PATH('') 作用,以及 STUFF 、 dbo.fn_SplitStr函数 可以看下本文说的那两篇文章。

  相关解决方案