博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
多条记录的同一字段组合成一个字符串 FOR XML PATH
阅读量:5024 次
发布时间:2019-06-12

本文共 957 字,大约阅读时间需要 3 分钟。

stuff(select ',' + fieldname  from tablename for xml path('')),1,1,'') 这一整句的作用是将多行fieldname字段的内容串联起来,用逗号分隔。 例如表 fieldname ----------- AAA BBB CCC 串联之后就是字符串: AAA,BBB,CCC for xml path是SQL Server 2005以后版本支持的一种生成XML的方式。具体如何使用,请参考联机丛书。 stuff函数的作用是去掉字符串最前面的逗号分隔符。 ---------------------------------------------------------------
在sql server 2000中只能用函数解决
create 
table 
tb(id 
int
, value 
varchar
(10)) 
insert 
into 
tb 
values
(1, 
'aa'
insert 
into 
tb 
values
(1, 
'bb'
insert 
into 
tb 
values
(2, 
'aaa'
insert 
into 
tb 
values
(2, 
'bbb'
insert 
into 
tb 
values
(2, 
'ccc'
go 
--1. 创建处理函数 
CREATE 
FUNCTION 
dbo.f_strUnite(@id 
int
RETURNS 
varchar
(8000) 
AS 
BEGIN 
    
DECLARE 
@str 
varchar
(8000) 
    
SET 
@str = 
'' 
    
SELECT 
@str = @str + 
',' 
+ value 
FROM 
tb 
WHERE 
id=@id 
    
RETURN 
STUFF(@str, 1, 1, 
''
END 
GO 
-- 调用函数 
SELECt 
id, value = dbo.f_strUnite(id) 
FROM 
tb 
GROUP 
BY 
id 
 
go
 
id          value      
----------- ----------- 
1          aa,bb 
2          aaa,bbb,ccc 
 

转载于:https://www.cnblogs.com/xiaonanmu/p/4828076.html

你可能感兴趣的文章
AJAX 状态值与状态码详解
查看>>
php面向对象编程(oop)基础知识示例解释
查看>>
1.在数组中找到与给定总和的配对
查看>>
树的子结构
查看>>
关于根据Build Platform或者OS 加载x86或者x64 dll的问题
查看>>
程序员高效开发的几个技巧
查看>>
js-权威指南学习笔记19.2
查看>>
hexo 搭建博客
查看>>
关于 UIWebView 几个高级用法
查看>>
maven创建的项目中无法创建src/main/java 解决方案
查看>>
华为软件开发云测评报告二:代码检查
查看>>
集合1
查看>>
js 原生 ajax
查看>>
关键词 virtual
查看>>
建造者模式(屌丝专用)
查看>>
UVALive 4730 Kingdom +段树和支票托收
查看>>
[APIO2010]特别行动队
查看>>
[SCOI2016]幸运数字
查看>>
SpringBoot 集成ehcache
查看>>
初步swift语言学习笔记2(可选类型?和隐式可选类型!)
查看>>