灯火互联
管理员
管理员
  • 注册日期2011-07-27
  • 发帖数41778
  • QQ
  • 火币41290枚
  • 粉丝1086
  • 关注100
  • 终身成就奖
  • 最爱沙发
  • 忠实会员
  • 灌水天才奖
  • 贴图大师奖
  • 原创先锋奖
  • 特殊贡献奖
  • 宣传大使奖
  • 优秀斑竹奖
  • 社区明星
阅读:4667回复:0

[SQL Server]SQLServer中将多行内容显示在一列中的方法

楼主#
更多 发布于:2012-09-23 13:27

SQLServer中将多行内容显示在一列中的方法

SQLSERVER2005支持XML格式数据,这个方法就是利用XML来进行转换。

STUFF(REPLACE(REPLACE((SELECT COL1 FROM [TABLE] N FOR XML AUTO ),
'<N COL1=\"', ','), '\"/>', ''), 1, 1, '')
  www.atcpu.com
在查询语句后加FOR XML AUTO可以得到查询结果的xml类型格式为:

<N COL1="VALUE1"></N>
<N COL1="VALUE2"></N>

通过replace函数替换掉xml中结果以外的数据。

通过stuff函数将第一个节点替换的,去掉。

喜欢0 评分0
游客

返回顶部