| 您的当前位置:首页 --> MSSQL教程 |
| sql server 中合并某个字段值的实例 |
| 浏览次数:999 关键词 ( ) |
|
有表如下:
如何获得如下结果:
解法 使用xml转换 代码如下: 复制代码 代码如下: CREATE TABLE body ( ID int, BODY nvarchar(20) ) go INSERT INTO body VALUES(1,'aaaa') INSERT INTO body VALUES(2,'bbbb') INSERT INTO body VALUES(1,'cccccc') INSERT INTO body VALUES(3,'ddddd') go SELECT * FROM body SELECT distinct a.ID,stuff((SELECT ','+BODY FROM body WHERE ID=a.ID FOR xml path('')),1,1,'') ASBODY FROM body a --具体思路是这样的: SELECT ','+BODY FROM body WHERE ID=a.ID FOR xml path('') --这条语句的作用是按照a中的ID查找body表中ID=a.ID的所有记录,并把它转换成一个xml(关于将查询集转换成xml的文章,你可以去看看) stuff((SELECT ','+BODY FROM body WHERE ID=a.ID FOR xml path('')),1,1,'') --这条语句的作用是把生成的xml前面的一个逗号去掉并转化成标量值 --最后用一个distinct去掉重复的记录 |
| 下载次数:13 |
| 下载地址:点击下载 |
| 本资源为程序自动采集,如有侵权请联系我们移除 admin#80vps.com 来信请将#替换为@ |
| 下一条 Sqlserver事务备份和还原的实例代码(必看) 上一条 SSB(SQLservice Service Broker) 入门实例介绍 |