FOR XML PATH 转换问题
以下我带大家了解关于 FOR XML PATH
- 首先我们看下所熟悉的表数据

之后转换
<骨牌编号>1</骨牌编号>
<骨牌颜色>橙</骨牌颜色>
<骨牌类型>石英</骨牌类型>
<骨牌价格>1.30</骨牌价格>
<骨牌重量>10.25</骨牌重量>
<生产日期>2015-05-05T00:00:00</生产日期>
<骨牌编号>2</骨牌编号>
<骨牌颜色>蓝</骨牌颜色>
<骨牌类型>石英</骨牌类型>
<骨牌价格>1.30</骨牌价格>
<骨牌重量>10.04</骨牌重量>
<生产日期>2015-12-21T00:00:00</生产日期>
<骨牌编号>3</骨牌编号>
<骨牌颜色>紫</骨牌颜色>
<骨牌类型>石英</骨牌类型>
<骨牌价格>1.30</骨牌价格>
<骨牌重量>10.39</骨牌重量>
<生产日期>2015-03-04T00:00:00</生产日期>
<骨牌编号>4</骨牌编号>
<骨牌颜色>紫</骨牌颜色>
<骨牌类型>石英</骨牌类型>
<骨牌价格>1.30</骨牌价格>
<骨牌重量>10.37</骨牌重量>
<生产日期>2015-07-16T00:00:00</生产日期>
<骨牌编号>5</骨牌编号>
<骨牌颜色>绿</骨牌颜色>
<骨牌类型>石英</骨牌类型>
<骨牌价格>1.30</骨牌价格>
<骨牌重量>10.30</骨牌重量>
<生产日期>2015-10-14T00:00:00</生产日期>
<骨牌编号>6</骨牌编号>
<骨牌颜色>红</骨牌颜色>
<骨牌类型>石英</骨牌类型>
<骨牌价格>1.30</骨牌价格>
<骨牌重量>10.34</骨牌重量>
<生产日期>2015-03-03T00:00:00</生产日期>
<骨牌编号>7</骨牌编号>
<骨牌颜色>绿</骨牌颜色>
<骨牌类型>石英</骨牌类型>
<骨牌价格>1.30</骨牌价格>
<骨牌重量>10.06</骨牌重量>
<生产日期>2015-11-19T00:00:00</生产日期>
<骨牌编号>8</骨牌编号>
<骨牌颜色>蓝</骨牌颜色>
<骨牌类型>石英</骨牌类型>
<骨牌价格>1.30</骨牌价格>
<骨牌重量>10.74</骨牌重量>
<生产日期>2015-02-04T00:00:00</生产日期>
<骨牌编号>9</骨牌编号>
<骨牌颜色>绿</骨牌颜色>
<骨牌类型>石英</骨牌类型>
<骨牌价格>1.30</骨牌价格>
<骨牌重量>10.54</骨牌重量>
<生产日期>2015-01-28T00:00:00</生产日期>
<骨牌编号>10</骨牌编号>
<骨牌颜色>紫</骨牌颜色>
<骨牌类型>石英</骨牌类型>
<骨牌价格>1.30</骨牌价格>
<骨牌重量>10.52</骨牌重量>
<生产日期>2015-05-07T00:00:00</生产日期>
从以上我们可以看到:
FOR XML PATH('') 这个代码是把SQL 的表格数据转换为XML数据流的功能
PAHT('')的 '' 里面的从图

可知是 PATH() 具表辨识行的作用。
- 好了废话不多说,以下我就以标注的形式进行讲解:
SELECT TOP 3骨牌编号
,骨牌颜色 -- 默认的列名为 骨牌颜色
,骨牌类型 AS DominoType -- 指定其他别名
,骨牌价格 + 骨牌重量 AS 组合值
,CONVERT(CHAR(10),生产日期,23) -- 当列进行编辑的时候,不附带AS别称的时候,会照成<生产日期></生产日期>丢失,即无列名
,骨牌颜色 + '的骨牌要花:' + CONVERT(VARCHAR(10),骨牌价格) + '元'
FROM [dbo].[骨牌存储箱]
FOR XML PATH('Item') -- 以Item为行号标识
<Item>
<骨牌编号>1</骨牌编号>
<骨牌颜色>橙</骨牌颜色>
<DominoType>石英</DominoType>
<组合值>11.55</组合值>
2015-05-05
橙的骨牌要花:1.30元
</Item>
<Item>
<骨牌编号>2</骨牌编号>
<骨牌颜色>蓝</骨牌颜色>
<DominoType>石英</DominoType>
<组合值>11.34</组合值>
2015-12-21
蓝的骨牌要花:1.30元
</Item>
<Item>
<骨牌编号>3</骨牌编号>
<骨牌颜色>紫</骨牌颜色>
<DominoType>石英</DominoType>
<组合值>11.69</组合值>
2015-03-04
紫的骨牌要花:1.30元
</Item>
就是列无标题的就是会失去<></>剩下的大家可以自由的组合编辑了。
FOR XML PATH 转换问题的更多相关文章
- (1.3)DML增强功能-Apply、pivot、unpivot、for xml path行列转换
深入了解行列转换请参考另一篇文章:https://www.cnblogs.com/gered/p/9271581.html 总结: 1.apply一般形式 --基本形式 SELECT a FROM d ...
- 使用SQL SERVER FOR XML PATH将多个结果集转换成一行并进行去重处理
在一个医药行业的系统中需要根据患者的接触记录ID获取不同接触类型的集合,效果像这样 --患者接触记录信息,一个患者可以有N个不同的接触记录,每个接触记录又有N个接触类型记录 IF OBJECT ...
- sql 将某列转换成一个字符串 for xml path用法
declare @test table( name varchar(10)) insert into @test values('a') insert into @test values('b') i ...
- Sql Server FOR XML PATH
FOR XML PATH 有的人可能知道有的人可能不知道,其实它就是将查询结果集以XML形式展现,有了它我们可以简化我们的查询语句实现一些以前可能需要借助函数活存储过程来完成的工作.那么以一个实例为主 ...
- 灵活运用 SQL SERVER FOR XML PATH
FOR XML PATH 有的人可能知道有的人可能不知道,其实它就是将查询结果集以XML形式展现,有了它我们可以简化我们的查询语句实现一些以前可能需要借助函数活存储过程来完成的工作.那么以一个实例为主 ...
- 转王波洋,SQL语句中的 for XML Path('')
FOR XML PATH 有的人可能知道有的人可能不知道,其实它就是将查询结果集以XML形式展现,有了它我们可以简化我们的查询语句实现一些以前可能需要借助函数活存储过程来完成的工作.那么以一个实例为主 ...
- sql FOR XML PATH
FOR XML PATH 有的人可能知道有的人可能不知道,其实它就是将查询结果集以XML形式展现,有了它我们可以简化我们的查询语句实现一些以前可能需要借助函数活存储过程来完成的工作.那么以一个实例为主 ...
- FOR XML PATH 解决联接返回结果集各记录问题
FOR XML PATH 有的人可能知道有的人可能不知道,其实它就是将查询结果集以XML形式展现,有了它我们可以简化我们的查询语句实现一些以前可能需要借助函数活存储过程来完成的工作.那么以一个实例为主 ...
- 将Xml字符串转换成(DataTable || DataSet || XML)对象
今天用到一个功能:就是把从数据库读出来的内容转换成XML字符串流格式,并输出给一个功能函数.在写的过程,为方便以后的使用,我对这一功能进行分装.该类的具体格式如下:XmlConvert类命名空间:Ni ...
随机推荐
- lightoj 1011 (状态压缩dp)
思路:状态压缩dp,设dp[i][j] 表示前i行,状态为j时的最大值,状态定义为:若前i行中取了第x列那么j的二进制位中第x位为1,否则为0,最后答案就是dp[n-1][(1 << n) ...
- The Shortest Path in Nya Graph
Problem Description This is a very easy problem, your task is just calculate el camino mas corto en ...
- Html笔记(四)图像
图像标签: <img> <img src="../dir/file" alt="说明文字" height width border/> ...
- poj 2528 线段树 离散化的小技巧
题意:在墙上贴海报,海报可以互相覆盖,问最后可以看见几张海报思路:直接搞超时+超内存,需要离散化.离散化简单的来说就是只取我们需要的值来 用,比如说区间[1000,2000],[1990,2012] ...
- Nyoj42 一笔画问题 (欧拉道路)
http://acm.nyist.net/JudgeOnline/problem.php?pid=42题目链接 #include <cstdio> #include <cstring ...
- Codeforces245H - Queries for Number of Palindromes(区间DP)
题目大意 给定一个字符串s,q个查询,每次查询返回s[l-r]含有的回文子串个数(题目地址) 题解 和有一次多校的题目长得好相似,这个是回文子串个数,多校的是回文子序列个数 用dp[i][j]表示,s ...
- 问题-[Delphi]提示Can't load package:dclite70.bpl解决方法
问题现象:提示Can't load package:dclite70.bpl 问题原因:全是Window2003的Data Execution Prevention(DEF数据执行保护)造成的. 解决 ...
- JavaScript- The Good Parts function Curry
Functions are values, and we can manipulate function values in interesting ways.Currying allows us t ...
- 使用VisualSVN Server搭建SVN服务器(转载)
转载于http://www.cnblogs.com/greywolf/archive/2013/01/28/2879952.html 使用 VisualSVN Server来实现主要的 SVN功能则要 ...
- Kinect for Windows SDK开发入门(15):进阶指引 下
Kinect for Windows SDK开发入门(十五):进阶指引 下 上一篇文章介绍了Kinect for Windows SDK进阶开发需要了解的一些内容,包括影像处理Coding4Fun K ...