用法: FOR XML PATH 方法是用于将查询结果集以XML形式展示

sql:

  select top 5 p.ContactTypeID,p.ModifiedDate,p.Name from [Person].[ContactType] p for xml path

显示结果:

<row>
<ContactTypeID>1</ContactTypeID>
<ModifiedDate>2002-06-01T00:00:00</ModifiedDate>
<Name>Accounting Manager</Name>
</row>
<row>
<ContactTypeID>2</ContactTypeID>
<ModifiedDate>2002-06-01T00:00:00</ModifiedDate>
<Name>Assistant Sales Agent</Name>
</row>
<row>
<ContactTypeID>3</ContactTypeID>
<ModifiedDate>2002-06-01T00:00:00</ModifiedDate>
<Name>Assistant Sales Representative</Name>
</row>
<row>
<ContactTypeID>4</ContactTypeID>
<ModifiedDate>2002-06-01T00:00:00</ModifiedDate>
<Name>Coordinator Foreign Markets</Name>
</row>
<row>
<ContactTypeID>5</ContactTypeID>
<ModifiedDate>2002-06-01T00:00:00</ModifiedDate>
<Name>Export Administrator</Name>
</row>

path的用法:用来指定行结点,如果不指定行节点,默认使用'row',

sql:

  select top 5 p.ContactTypeID,p.ModifiedDate,p.Name from [Person].[ContactType] p for xml path('AA')

显示结果:

<AA>
<ContactTypeID>1</ContactTypeID>
<ModifiedDate>2002-06-01T00:00:00</ModifiedDate>
<Name>Accounting Manager</Name>
</AA>
<AA>
<ContactTypeID>2</ContactTypeID>
<ModifiedDate>2002-06-01T00:00:00</ModifiedDate>
<Name>Assistant Sales Agent</Name>
</AA>
<AA>
<ContactTypeID>3</ContactTypeID>
<ModifiedDate>2002-06-01T00:00:00</ModifiedDate>
<Name>Assistant Sales Representative</Name>
</AA>
<AA>
<ContactTypeID>4</ContactTypeID>
<ModifiedDate>2002-06-01T00:00:00</ModifiedDate>
<Name>Coordinator Foreign Markets</Name>
</AA>
<AA>
<ContactTypeID>5</ContactTypeID>
<ModifiedDate>2002-06-01T00:00:00</ModifiedDate>
<Name>Export Administrator</Name>
</AA>

下来来利用 for xml path 输出结果就是一行字符串,如果去掉行节点就可以把整列的结果输出一行,

sql :

select top 5 '['+ p.Name+']' from [Person].[ContactType] p for xml path('')

显示结果: [Accounting Manager][Assistant Sales Agent][Assistant Sales Representative][Coordinator Foreign Markets][Export Administrator]

这个可用来 一行来显示明细表中的信息,通常主表和细表是一对多的关系,把细表中的多用 for xml path 输出为一列,加到主表中一起输出。

T-sql for xml path使用的更多相关文章

  1. sql分组合并字段重复项sql for xml path

    -------------------------(情景描述) 在我们处理数据时,可能会碰到这种情景: Id                Name 1                  a,b 2  ...

  2. sql for xml path 处理

    1.将下列结果集 做成 aa   语文,数学 bb    英语,语文 这种格式 使用 for xml  path  记得去重复 WITH cte AS(SELECT stu.studentname,c ...

  3. 一个由正则表达式引发的血案 vs2017使用rdlc实现批量打印 vs2017使用rdlc [asp.net core 源码分析] 01 - Session SignalR sql for xml path用法 MemCahe C# 操作Excel图形——绘制、读取、隐藏、删除图形 IOC,DIP,DI,IoC容器

    1. 血案由来 近期我在为Lazada卖家中心做一个自助注册的项目,其中的shop name校验规则较为复杂,要求:1. 英文字母大小写2. 数字3. 越南文4. 一些特殊字符,如“&”,“- ...

  4. SQL FOR XML PATH 用法

    FOR XML PATH 有的人可能知道有的人可能不知道,其实它就是将查询结果集以XML形式展现,有了它我们可以简化我们的查询语句实现一些以前可能需要借助函数活存储过程来完成的工作.那么以一个实例为主 ...

  5. SQL FOR XML PATH 和 Stuff 用法

    sql stuff 用法 1.作用 删除指定长度的字符,并在指定的起点处插入另一组字符. 2.语法 STUFF ( character_expression , start , length ,cha ...

  6. SQL - for xml path('') 实现多行合并到一行, 并带有分隔符

    docs.microsoft.com 链接:  SQL一个应用场景与FOR XML PATH应用 首先呢!我们在增加一张学生表,列分别为(stuID,sName,hobby),stuID代表学生编号, ...

  7. SQLServer中sql for xml path 的用法

    我们通常需要获取一个多行的某个字段拼出的字符串,我们可以使用for xml path进行处理:下面将介绍for xml path的具体用法: 创建测试表&插入测试数据 在数据库中新增测试表 C ...

  8. sql For xml path('') 备忘

    sql 合并行使用的两个函数记录: SELECT CityName,STUFF((SELECT ',' + UserName FROM table1 subTitle WHERE CityName=A ...

  9. sql FOR XML PATH

    FOR XML PATH 有的人可能知道有的人可能不知道,其实它就是将查询结果集以XML形式展现,有了它我们可以简化我们的查询语句实现一些以前可能需要借助函数活存储过程来完成的工作.那么以一个实例为主 ...

  10. SQL Server XML Path[转]

    FOR XML PATH 有的人可能知道有的人可能不知道,其实它就是将查询结果集以XML形式展现,有了它我们可以简化我们的查询语句实现一些以前可能需要借助函数活存储过程来完成的工作.那么以一个实例为主 ...

随机推荐

  1. [TCO2013]DirectionBoard

    题意:给一个网格,每个格子有一个方向表示在这个格子上要往哪个方向走,你可以改变某些格子的方向,问最少多少次操作使得从任意格子出发都能回到这个格子 woc这都不会我还是回家种田去吧... 题目的要求是改 ...

  2. json,xml,html三种数据格式

    json.xml.html xml解析如下: 1.DOM:基于XML文档树结构的解析 解析器读入整个文档,然后构建一个驻留内存的树结构,然后代码就可以使用 DOM 接口来操作这个树结构.优点:整个文档 ...

  3. java乱码问题总结

    在基于Java的编程中,经常会碰到汉字的处里及显示的问题,比如一大堆乱码或问号. 这是因为JAVA中默认的编码方式是UNICODE,而中国人通常使用的文件和DB都是基于GB2312或者BIG5等编码, ...

  4. 测试 markdown

    PHP 标量类型与返回值类型声明 标量类型声明 默认情况下,所有的PHP文件都处于弱类型校验模式. PHP 7 增加了标量类型声明的特性,标量类型声明有两种模式: 强制模式 (默认) 严格模式 标量类 ...

  5. c/c++代码的unit-test中覆盖率的统计

    gcov lcov genhtml工具      gcov伴随gcc 发布.gcc编译加入-fprofile-arcs -ftest-coverage 参数生成二进制程序,执行测试用例生成代码覆盖率信 ...

  6. .Net 有关程序集查找与加载的一点反思

    最近在做一款叫VICA产品,此产品采用了插件机制,插件在运行中加载,插件与插件之间存在依赖关系,所有的插件DLL为方便管理都放置在Plugins的文件夹下统一管理.这种处理方式不自觉的就让我想了解cl ...

  7. [UML] UML中类之间的几种关系

    类之间可能存在以下几种关系:关联(association).依赖(dependency).聚合(Aggregation,也有的称聚集).组合(Composition).泛化(generalizatio ...

  8. .NET Oracle Developer的福音——ODP.NET Managed正式推出

    .NET Oracle Developer的福音--ODP.NET Managed正式推出   在.NET平台下开发Oracle应用的小伙伴们肯定都知道一方面做Oracle开发和实施相比SqlServ ...

  9. OpenWRT DNS无法解析WAN连接的内网服务器域名

    系统版本OpenWrt Chaos Calmer 15.05.1,网络连接为:WAN口连接内网10.x.x.x网段,WAN口设置为静态IP.设置L2TP接口,通过L2TP访问外网.问题出现于,所有外网 ...

  10. 在Oracle 11.2.0.1.0下dbms_stats.gather_table_stats收集直方图不准

    SQL> select * from v$version; BANNER ------------------------------------------------------------ ...