SQL中如何使用FOR XML PATH合并行数据?(一)

FOR XML PATH是什么

FOR XML PATH 是将查询结果集以XML形式展现,将多行的结果,展示在同一行。

我们用实例来给大家介绍它的神奇之处。

创建测试数据

我们创建一个统计学生爱好的表

SQL中如何使用FOR XML PATH合并行数据?(一)

查询学生爱好表Stu_Hobby里面的数据:

SQL中如何使用FOR XML PATH合并行数据?(一)

使用方法介绍

测试数据建立好后,我们开始对这个表里面的数据进行查询,并使用上FOR XML PATH。

SQL中如何使用FOR XML PATH合并行数据?(一)

结果如下:


SQL中如何使用FOR XML PATH合并行数据?(一)

它会生成一段XML代码,我们点击这行代码会弹出一整个XML的页面,由于篇幅较长,我们只截取一部分,具体如下:

SQL中如何使用FOR XML PATH合并行数据?(一)

此外我们还可以在FOR XML PATH的后面写参数,如果后面接参数,会将节点换成参数名称,例如:

SQL中如何使用FOR XML PATH合并行数据?(一)

结果如下图:


SQL中如何使用FOR XML PATH合并行数据?(一)

已经变成了我们添加的参数了。


跟我们实际需求相接近的是下面这个功能

我们可以单独输出某个字段的值,例如我们想看看学生爱好表中Hobby这一列具体有一些什么值,可以这样写:

SQL中如何使用FOR XML PATH合并行数据?(一)


注意:上面的+是字段拼接,就是将两个字符串用+连成一个字符串。然后我们把XML中的给去掉。


结果如下:

SQL中如何使用FOR XML PATH合并行数据?(一)

可以看到我们写的所有爱好都给列出来了,没有去掉重复的,可以理解成把列里的值都显示出来了。

上一篇:celery任务调度模块


下一篇:Celery基本使用