• 将xml nodes 属性中的值 转为table 形式
  declare @xml2 xml
set @xml2 = '<CMADatas>
<CMAData CmaName="EventCfgItem" CmaValue="sap-abc1a01" />
<CMAData CmaName="EventNode" CmaValue="" />
<CMAData CmaName="EventSource" CmaValue="" />
<CMAData CmaName="EventType" CmaValue="" />
<CMAData CmaName="EventTypeInstance" CmaValue="" />
</CMADatas>'
select S.value('@CmaName', 'varchar(36)') as CmaName
, S.value('@CmaValue', 'varchar(36)') as CmaName
from @xml2.nodes('/CMADatas/CMAData') as T(S)
  • 将 xml tag标签的中值 转为 table 格式
DECLARE @xml xml='<mssql version="10.50.4000" name="Microsoft SQL Server Developer Edition (64-bit)">
<type name="Windows 7 Main Server">
<tag KeyValue="enabled">
<boolean>true</boolean>
</tag>
<tag KeyValue="disabled">
<tag method="Read">
<type name="Windows 8 virtual pc">
<tag KeyValue="uniqueKey">
<string>SQL Server 2008</string>
</tag>
<tag KeyValue="value 8GB">
<string>SQL Server 2000</string>
</tag>
</type>
</tag>
<tag method="Read">
<type name="Windows 8 virtual pc">
<tag KeyValue="primaryKey">
<string>SQL Server 2008 R2 SP1</string>
</tag>
<tag KeyValue="value 8GB">
<string>SQL Server 2005 SP3</string>
</tag>
</type>
</tag>
<tag method="Write">
<type name="Windows Server 2008 virtual pc">
<tag KeyValue="primaryKey">
<string>SQL Server 2008 R2 SP2</string>
</tag>
<tag KeyValue="value 10GB">
<string>SQL Server 2012</string>
</tag>
</type>
</tag>
</tag>
</type>
</mssql>'; SELECT b.c.value('@version', 'varchar(100)') [version]
,b.c.value('@name', 'varchar(200)') [Name]
,f.c.value('@name', 'varchar(200)') [ServerName]
,r.c.value('@KeyValue', 'varchar(50)') [KeyValue]
,r.c.value('(boolean)[1]', 'varchar(25)') [boolean]
,k.c.value('@method', 'varchar(25)') [method]
,k.c.value('@name', 'varchar(25)') [virtual_pc]
,y.c.value('@KeyValue', 'varchar(25)') [KeyValue]
,y.c.value('(string)[1]', 'varchar(25)') [string]
FROM @xml.nodes('mssql') b(c)
CROSS APPLY b.c.nodes('type') f(c)
CROSS APPLY f.c.nodes('tag') r(c)
CROSS APPLY f.c.nodes('tag/tag') k(c)
-- CROSS APPLY f.c.nodes('tag/tag/type') t(c)
CROSS APPLY f.c.nodes('tag/tag/type/tag') y(c);

SQL Convert XML to Table的更多相关文章

  1. SQL Server XML转Table

    前言 在SQL Server中有时候我们需要传人一个Table过去,然后可以在存储过程中批量更新,批量的获取相应数据. 但存储过程的参数是固定,所以这里我们可以变通的传人xml类型的参数,然后在存储过 ...

  2. Oracle使用Sql把XML解析成表(Table)的方法

    SELECT * FROM XMLTABLE('$B/DEAL_BASIC/USER_DEAL_INFO' PASSING XMLTYPE('<?xml version="1.0&qu ...

  3. (轉載)sql server xml字段的操作

    原文轉自:http://blog.csdn.net/hliq5399/article/details/8315373 另外可參考:https://msdn.microsoft.com/en-us/li ...

  4. SQL SERVER XML 学习总结

    SQL  SERVER  XML  学习总结 最新的项目任务要做一个数据同步的功能,这些天都在做技术准备,主要是用到了微软的Service Broker技术,在熟悉使用该技术的同时,又用到了Sql s ...

  5. sql for xml query sample

    sample 1: declare @x xml select @x='<ArrayOfScheduledTime> <ScheduledTime> <Recurrenc ...

  6. sql for xml 还有一种写法(採用 tag 与 union all,简洁易懂)

    sql for xml 还有一种写法(採用 tag 与 union all,简洁易懂) 測试环境:sql 08, 08 R2, 2010,  2012, 2014 等 declare @agent t ...

  7. My Sql 中要Alter Table的同学请注意!!!

    首先我建议你在对MySQL表做DDL操作时: 1 执行 show processlist 查看,要操作的表(数据库对象)是否处于锁状态 if("未锁定") { 执行DDL语句 }e ...

  8. Sql Server xml 类型字段的增删改查

    1.定义表结构 在MSSM中新建数据库表CommunicateItem,定义其中一个字段ItemContentXml 为xml类型 2.编辑表数据,新增一行,发现xml类型不能通过设计器录入数据. 需 ...

  9. discuz搬家后报错SQL:SELECT value FROM [Table]vars WHERE name=’noteexists1′的解决办法

    基本上每个站长都会经历网站搬家,网站搬家中有时候就会遇到这次提到的这个错误数据库报错::SQL:SELECT value FROM [Table]vars WHERE name=\\\'noteexi ...

随机推荐

  1. aix创建lv 在lv上创建文件系统

    创建LV命令: mklv -y softlv -t jfs2 rootvg 15G 创建文件系统命令: crfs -v jfs2 -d/dev/softlv -m /soft -A yes 把soft ...

  2. shell 变量自增(转)

    原文地址:http://www.cnblogs.com/iloveyoucc/archive/2012/07/11/2585559.html Linux Shell中写循环时,常常要用到变量的自增,现 ...

  3. Java可视化编程,基于布局管理器的UI设计

    在<事件驱动模型>讲述了如何将用户与功能实现代码联系到一起.怎么样便于用户理解和符合用户的使用习惯? 本篇还是就此问题作分析,站在用户角度上分析UI各组件倒底该如何设计呈现. 优秀的UI会 ...

  4. [置顶] 【IOS】IOS7 UI适配

    昨天下了把手机升级成了IOS7 正式版,然后下了最新的xocde5.  试着编译了一下刚刚完成的几个应用,还好问题不大,半个小时的时间都适配好了,然后改了下几个新出现的warning.过几天等空了,要 ...

  5. 图片裁剪:CropZoom插件

    上传个人头像的功能:用户在上传自己的照片后,由于照片尺寸不符合网站的要求,要求用户对照片进行裁剪,最终根据用户裁剪的尺寸生成头像. 用户可以对上传的图片进行自由缩放.裁剪,使之符合彩信图片的大小. C ...

  6. sessionStorage和localStorage之间的差别

    <!DOCTYPE html><html> <head lang="en"> <meta charset="utf-8" ...

  7. SharePoint 2013 强制安装解决方案

    Add-SPSolution Install-SPSolution -Identity DemonstrationZone.wsp -GACDeployment -CompatibilityLevel ...

  8. Android源码大全

    JavaApk-安卓应用游戏APP源码下载 - Android App Games Source Download. http://www.javaapk.com/  700多个 Android 例子 ...

  9. Quartz 2D官方文档翻译(持续更新中)

    转换  核心绘图模型定义了两个完全独立的坐标空间:用户空间,一个是代表文档页,和设备空间,另外一个代表本机设备的分辨率.用户空间坐标是与设备空间中像素分辨率无关的浮点数字.当你想要打印或者显示你的文档 ...

  10. 为何遍历Ldr会得到空项?

    转自:http://www.0xaa55.com/thread-1385-1-1.html 之前做过ldr遍历的操作,发现第一项竟然是空,也就是大部分元素都是0,下面来揭示一下原理: 经过研究,其实L ...