先是呢!我们在大增一张学子表,列分别为(stuID,sName,hobby),stuID代表学子编号,sName代表学子姓名,hobby列存学子的喜欢!那么今后表结构如下:

那正是说,怎样转移XML行节点的称谓呢?代码如下:

           图片 1

SELECT hobby+’,’FROM
student
WHERE sName=A.sName
FOR XML PATH(”)

SELECT B.sName,LEFT(StuList,LEN(StuList)-1) as hobby  便是来去掉逗号

[ 爬山 ][ 游泳 ][ 美食 ]

 

图片 2

 

接下去大家来看使用FOKoleos XML PATH的查询结果语句如下:

 

图片 3

docs.microsoft.com 链接:  [SQL 

剩余的代码首先是将表分组,在进行FO奥迪Q5 XML PATH
格式化,这时候当还未有曾试行最外层的SELECT时查询出的社团为:

       
 结果如下:图片 4

结果必然也同理可得了吗?对的原本的行节点<row>
变成了大家在PATH前边括号()中,自定义的称呼<MyHobby>,结果如下:

 

SELECT hobbyID as’MyCode’,hName
as’MyName’FROM@hobbyFOR XML
PATH(‘MyHobby’)

](
XML PATH应用**

哦!
既然行的节点与列的节点大家都能够自定义,大家是还是不是能够营造大家怜爱的出口格局呢?如故看代码:

       
那时,大家的渴求是询问学生表,呈现全体学子的爱好的结果集,代码如下:

那就是说任何品类的列怎么自定义?
不妨,我们将它们转换到字符串类型就行呐!譬如:

SELECT B.sName,LEFT(StuList,LEN(StuList)-1) as hobby FROM (
SELECT sName,
(SELECT hobby+',' FROM student 
  WHERE sName=A.sName 
  FOR XML PATH('')) AS StuList
FROM student A 
GROUP BY sName
) B 

好的 FO凯雷德 XML PATH就大旨介绍到此处吧,越来越多关于FOVanquishXML的知识请查阅帮忙文书档案!

 

SELECT B.sName,LEFT(StuList,LEN(StuList)-1) as hobby
FROM (
SELECT sName,
(SELECT hobby+’,’FROM
student
WHERE sName=A.sName
FOR XML PATH(”))
AS StuList
FROM student A
GROUPBY sName
) B

 

<row>
<hobbyID>1</hobbyID>
<hName>爬山</hName>
</row>
<row>
<hobbyID>2</hobbyID>
<hName>游泳</hName>
</row>
<row>
<hobbyID>3</hobbyID>
<hName>美食</hName>
</row>

图片 5

SELECT B.sName,LEFT(StuList,LEN(StuList)-1) as hobby
FROM (
SELECT sName,
(SELECT hobby+’,’FROM
student
WHERE sName=A.sName
FOR XML PATH(”))
AS StuList
FROM student A
GROUPBY sName
) B

图片 6

没有错大家还足以由此标记+号,来对字符串类型字段的输出格式实行定义。结果如下:

生机勃勃.FO凯雷德 XML PATH 简介

图片 7

 

结果:

接下去我们来看二个FO昂Cora XML PATH的选拔场景吧!那么开端吧。。。。。。

结果如下:图片 4

图片 9