(SELECThobby+','FROMstudentWHEREsName=A.sNameFORXML PATH(''))ASStuListFROMstudent AGROUPBYsName ) B 果如下: 分析:好的,那么我们来分析一下,首先看这句: SELECThobby+','FROMstudentWHEREsName=A.sNameFORXML PATH('') 这句是通过FOR XML PATH 将某一姓名如张三的爱好,显示成格式为:“ 爱好1,爱好2...
这里用到了STUFF和 FORXMLPATH,本文主要介绍STUFF。 用法及详解 STUFF(param1, startIndex, length, param2) 将param1中自startIndex(SQL中都是从1开始,而非0)起,删除length个字符,然后用param2替换删掉的字符。 1、param1:一个字符数据表达式。param1可以是常量、变量,也可以是字符列或二进制数据列。 2、s...
--实例二、SQL 将列转成字符串并用逗号分隔--同样的,我们也用到了for xml path这个方法SELECTSTUFF((SELECT','+ActionNameFROM[dbo].[Workflow_Action]FORXML PATH('')),1,1,'')ASWA --实例三、最后我们实现,上面for xml path的功能--先查出两个字段,然后对ActionName这个字段进行转化,where条件记得加上...
param2:用于替换删除字符的字符串。示例:在上面的FOR XML PATH示例中,STUFF函数用于去除合并后字符串开头的空格。如果不使用STUFF函数,合并后的字符串将以一个空格开头。综上所述,SQL中的CONVERT函数用于数据类型转换,FOR XML PATH用于多行数据合并与拼接,而STUFF函数则用于字符串的删除与替换操作。...
这里利用的是 for xml path 就是将查询结果集以XML形式展现 这里的char(10)代表的是以空格隔开每一个字段 也可以将char(10)替换为其他字符,比如‘#’ 则以#分割 另外我们看下不加char(10)则会会显示的默认xml形式: 最后,如果你想把字段最前面的符号去除,可以用select stuff() select item, stuff( (select...
stuff((select ',' + 名称 from Table_A where 类别 = A.类别 for xml path('')),1,1,''))from Table_A as A group by 类别 这⾥使⽤了SQL Server 2005版本以后加⼊的stuff以及for xml path,先说下在上⾯这句sql中的作⽤,然后再详细的说明⼀下这两个的⽤法。for xml path('')...
select [value]+','from tb as b where b.id=a.id for xml path('')) from tb as a group by id --第二种显示结果--1aa,bb, --2aaa,bbb,ccc,--第三种显示 select id, [val]=stuff(( select ','+[value] from tb as b where b.id=a.id for xml path('')),1,1,'') from tb...
stuff(param1, startIndex, length, param2)。其中,param1是需要操作的字符串,startIndex表示从字符串中的第几个字符开始操作(在SQL中从1开始计数),length表示需要删除的字符数量,param2是用于替换删除字符的字符串。通过上述实例,我们不仅理解了SQL转换、for xml path、以及stuff函数的使用方法,还...
'stuff’和'for xml path('')‘EN--用法如图 已, 分割 ''内存放数据 select STUFF((SELEC...
这里利用的是 for xml path 就是将查询结果集以XML形式展现 这里的char(10)代表的是以空格隔开每一个字段 也可以将char(10)替换为其他字符,比如‘#’ 则以#分割 另外我们看下不加char(10)则会会显示的默认xml形式: 最后,如果你想把字段最前面的符号去除,可以用select stuff() ...