SELECThobby+','FROMstudentWHEREsName=A.sNameFORXML PATH('') 这句是通过FOR XML PATH 将某一姓名如张三的爱好,显示成格式为:“ 爱好1,爱好2,爱好3,”的格式! 那么接着看: SELECTB.sName,LEFT(StuList,LEN(StuList)-1)ashobbyFROM(SELECTsName, (SELECThobby+','FROMstudentWHEREsName=A.sNameFORXML P...
这里用到了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条件记得加上...
这里利用的是 for xml path 就是将查询结果集以XML形式展现 这里的char(10)代表的是以空格隔开每一个字段 也可以将char(10)替换为其他字符,比如‘#’ 则以#分割 另外我们看下不加char(10)则会会显示的默认xml形式: 最后,如果你想把字段最前面的符号去除,可以用select stuff() select item, stuff( (select...
SQL CONVERT、FOR XML PATH、STUFF的使用如下:1. CONVERT函数的使用 功能:用于数据类型转换。示例:将时间戳转换为日期格式。例如,将时间戳转换为统一的一天格式,可以使用以下SQL语句:sqlCONVERT, DATEADD, 112)这条语句将时间戳ctime转换为从1970年1月1日00:00:00开始的秒数对应的日期,并格式化为...
在SQL中从1开始计数),length表示需要删除的字符数量,param2是用于替换删除字符的字符串。通过上述实例,我们不仅理解了SQL转换、for xml path、以及stuff函数的使用方法,还体会到了它们在数据整合与处理中的强大功能。这些技术在实际应用中能有效提升数据操作的效率与灵活性。
说了这么多,我们看看STUFF怎么解决我们上面的问题吧,上代码: SELECTA.Stu_Name,A.Age,STUFF((SELECT '、'+HobbyFROM [dbo].Stu_HobbyWHERE--必须加的匹配条件Stu_Name=A.Stu_Name AND Age=A.Age FOR XML PATH('')),1,1,'') AS HobbyFROM [dbo].Stu_Hobby AGROUP BY A.Stu_Name,A.Age ...
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((select ',' + ep_name from ep_detail where ep_classes = a.ep_classes for xml path('')), 1, 1, '')这句是把拼接的内容的第⼀个“,”去掉 stuff:1、作⽤ stuff(param1, startIndex, length, param2)将param1中⾃startIndex(SQL中都是从1开始,⽽⾮0)起,删除length个字符...
'stuff’和'for xml path('')‘EN--用法如图 已, 分割 ''内存放数据 select STUFF((SELEC...