T-sql for xml path使用
用法: 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使用的更多相关文章
- sql分组合并字段重复项sql for xml path
-------------------------(情景描述) 在我们处理数据时,可能会碰到这种情景: Id Name 1 a,b 2 ...
- sql for xml path 处理
1.将下列结果集 做成 aa 语文,数学 bb 英语,语文 这种格式 使用 for xml path 记得去重复 WITH cte AS(SELECT stu.studentname,c ...
- 一个由正则表达式引发的血案 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. 一些特殊字符,如“&”,“- ...
- SQL FOR XML PATH 用法
FOR XML PATH 有的人可能知道有的人可能不知道,其实它就是将查询结果集以XML形式展现,有了它我们可以简化我们的查询语句实现一些以前可能需要借助函数活存储过程来完成的工作.那么以一个实例为主 ...
- SQL FOR XML PATH 和 Stuff 用法
sql stuff 用法 1.作用 删除指定长度的字符,并在指定的起点处插入另一组字符. 2.语法 STUFF ( character_expression , start , length ,cha ...
- SQL - for xml path('') 实现多行合并到一行, 并带有分隔符
docs.microsoft.com 链接: SQL一个应用场景与FOR XML PATH应用 首先呢!我们在增加一张学生表,列分别为(stuID,sName,hobby),stuID代表学生编号, ...
- SQLServer中sql for xml path 的用法
我们通常需要获取一个多行的某个字段拼出的字符串,我们可以使用for xml path进行处理:下面将介绍for xml path的具体用法: 创建测试表&插入测试数据 在数据库中新增测试表 C ...
- sql For xml path('') 备忘
sql 合并行使用的两个函数记录: SELECT CityName,STUFF((SELECT ',' + UserName FROM table1 subTitle WHERE CityName=A ...
- sql FOR XML PATH
FOR XML PATH 有的人可能知道有的人可能不知道,其实它就是将查询结果集以XML形式展现,有了它我们可以简化我们的查询语句实现一些以前可能需要借助函数活存储过程来完成的工作.那么以一个实例为主 ...
- SQL Server XML Path[转]
FOR XML PATH 有的人可能知道有的人可能不知道,其实它就是将查询结果集以XML形式展现,有了它我们可以简化我们的查询语句实现一些以前可能需要借助函数活存储过程来完成的工作.那么以一个实例为主 ...
随机推荐
- AtCoder - 4162 Independence
Problem Statement In the State of Takahashi in AtCoderian Federation, there are N cities, numbered 1 ...
- BZOJ 1588 [HNOI2002]营业额统计(双向链表)
[题目链接] http://www.lydsy.com/JudgeOnline/problem.php?id=1588 [题目大意] 给出一个数列,对于每个数,选择其前面的某个数作差取绝对值, 使得所 ...
- 【最小割】【Dinic】Gym - 101201G - Maximum Islands
题意:方格内有些位置是水域,有些位置是陆地,有些位置是被云彩遮挡住了:让你自己规定被云彩遮挡住的地方是陆地还是水域,使得陆地个数最多.(均为四连通块) 显然与陆地邻接的云彩填成水比较优.其他云彩格子填 ...
- 【manacher】HDU3068-最长回文
[题目大意] 给出一个只由小写英文字符a,b,c...y,z组成的字符串S,求S中最长回文串的长度. [manacher知识点] ①mx - i > P[j] 的时候,以S[j]为中心的回文子串 ...
- Vue实例与渲染
1 Vue框架 1.1 vue与jQuery区别 jQuery仍然是操作DOM的思想,jQuery主要用来写页面特效 Vue是前端框架(MVVM),对项目进行分层.处理数据 1.2 前端框架 angu ...
- Problem E: 零起点学算法34——3n+1问题
#include<stdio.h> #include<math.h> int main() { int n; n<=pow(,); ; scanf("%d&qu ...
- Hiho---欧拉图
欧拉路·一 时间限制:10000ms 单点时限:1000ms 内存限制:256MB 描述 小Hi和小Ho最近在玩一个解密类的游戏,他们需要控制角色在一片原始丛林里面探险,收集道具,并找到最后的宝藏.现 ...
- 错误:Caused by:org.apache.spark.SparkException: Kryo serialization failed: Buffer overflow.Available: 0, required: 21. To avoid this,
这个是写入Redis时用的序列化器,然后错误提示是超过了大小限制,把配置调大即可. .set("spark.kryoserializer.buffer.max","128 ...
- [Apache手册]Linux环境下配置Apache运行cgi
CGI动态页面 相关模块 相关指令 mod_alias mod_cgi AddHandler Options ScriptAlias CGI(公共网关接口)定义了web服务器与外部内容生成程序之间交互 ...
- 解决URL中包含“%2F”导致Apache地址重写mod_rewrite失效的问题
在使用Apache地址重写mod_rewrite期间,发现,当URL和PATH_INFO中出现%2f(/)或者%5c(\), 会被认为这是个不合法的请求, Apache将会直接返回"404 ...