SQL SERVER 解析XML字符串
--SET NOCOUNT ON
--SET ARITHABORT ON
--SET QUOTED_IDENTIFIER ON
--SET ANSI_PADDING ON DECLARE /*<xml><code>9</code><message>校验失败</message><data><lb>6</lb></data></xml>*/@xml1 VARCHAR(500)= '<xml>'+ CHAR(13)+ '<code>7</code>'+ CHAR(13)+ '<message>校验失败</message>'+ CHAR(13)+ '<data>'+ CHAR(13)+ '<lb>6</lb>'+ CHAR(13)+ '</data>'+ CHAR(13)+ '</xml>',/*<xml><code>7</code><data><item><name>张三</name><sex>男</sex><birth>2001-01-01</birth><age>20</age><balance>112.6</balance></item><item><name>李四</name><sex>女</sex><birth>2011-01-02</birth><age>10</age><balance>0.0</balance></item><item><name>王五</name><sex>男</sex><birth>2016-01-03</birth><age>5</age><balance>17.8</balance></item></data></xml>*/@xml2 VARCHAR(500)= '<xml>'+ CHAR(13)+ '<code>7</code>'+ CHAR(13)+ '<data>'+ CHAR(13)+ '<item>'+ '<name>张三</name>'+ '<sex>男</sex>'+ '<birth>2001-01-01</birth>'+ '<age>20</age>'+ '<balance>112.6</balance>'+ '</item>'+ '<item>'+ '<name>李四</name>'+ '<sex>女</sex>'+ '<birth>2011-01-02</birth>'+ '<age>10</age>'+ '<balance>0.0</balance>'+ '</item>'+ '<item>'+ '<name>王五</name>'+ '<sex>男</sex>'+ '<birth>2016-01-03</birth>'+ '<age>5</age>'+ '<balance>17.8</balance>'+ '</item>'+ '</data>'+ CHAR(13)+ '</xml>'DECLARE @RootXml XML,@ChildXml XML,@XmlTable XML--解析xml1
SET @RootXml= @xml1
SELECT c.value('(code/text())[1]','INT') code,c.value('(message/text())[1]','VARCHAR(100)') message
FROM @RootXml.nodes('/xml') as T(c)SELECT c.value('(lb/text())[1]','INT') lb FROM @RootXml.nodes('/xml/data') as T(c)SET @ChildXml = @RootXml.query('/xml/data')
SELECT c.value('(lb/text())[1]','INT') lb from @ChildXml.nodes('/data') as T(c)--解析xml2
SET @RootXml= @xml2
SET @XmlTable = @RootXml.query('/xml/data') SELECT c.value('(name/text())[1]','VARCHAR(50)') name,c.value('(sex/text())[1]','VARCHAR(2)') sex,c.value('(birth/text())[1]','Date') birth,c.value('(age/text())[1]','INT') birth,c.value('(balance/text())[1]','NUMERIC(12,2)') balance
FROM @XmlTable.nodes('/data/item') as T(c)
查询效果:
SQL SERVER 解析XML字符串相关推荐
- sql server解析xml属性为表格_Mybatis中SqlSource解析流程详解
前面几篇文章都在详细分析mapper的加载过程,但是始终没有看到sql的解析过程,今天来详细分析下. 解析sql的位置 前面分析到不管是通过注解还是通过xml方式生成mapper,最终都是调用Mapp ...
- sql server解析xml属性为表格_[Mybatis][基础支持层]mapper xml sql 解析
该系列文章针对 Mybatis 3.5.1 版本 Mybatis 中 标签解析,主要是为了得到两大部分数据 1.Mapper.class 接口 2.SQL 执行语句,结果集映射关系等数据 在上一章中提 ...
- SQL SERVER 解析XML到数据库表
//片段1 IF OBJECT_ID('tempdb..#TEMP') IS NOT NULL BEGIN DROP TABLE #TEMP END CREATE TABLE # ...
- SQL Server 输出 XML
一.概述 SELECT 查询将结果作为行集返回.在 SQL 查询中指定 FOR XML 子句,从而将该查询的正式结果作为 XML 来检索.FOR XML 子句可以用在顶级查询和子查询中.顶级 FOR ...
- SQL Server FOR XML PATH 语句的应用---列转行
经常在论坛看到高手使用了 for xml path,由于是搜索一下,记录了详细的使用方法. 在SQL Server中利用 FOR XML PATH 语句能够把查询的数据生成XML数据,下面是它的一些应 ...
- SQL Server对Xml字段的操作
T-Sql操作Xml数据 一.前言 SQL Server 2005 引入了一种称为 XML 的本机数据类型.用户可以创建这样的表,它在关系列之外还有一个或多个 XML 类型的列:此外,还允许带有变量和 ...
- c语言解析xml字符串_Python XML解析
Python XML解析 什么是XML? XML 指可扩展标记语言(eXtensible Markup Language). 你可以通过本站学习XML教程 XML 被设计用来传输和存储数据. XML是 ...
- SQL Server中截取字符串常用函数
SQL Server 中截取字符串常用的函数: 1.LEFT ( character_expression , integer_expression ) 函数说明:LEFT ( '源字符串' , '要 ...
- 框架选修课之dom4j解析xml字符串实例
DOM4J 与利用DOM.SAX.JAXP机制来解析xml相比,DOM4J 表现更优秀,具有性能优异.功能强大和极端易用使用的特点,只要懂得DOM基本概念,就可以通过dom4j的api文档来解析xml ...
最新文章
- lampapache+mysql+php
- 2019年平面设计趋势
- mybatis增删改查快速实现!!!
- esxi usb插口_酷暑大作战 | USB-C风扇新体验
- matlab 作图 虚线太长,matlab 极坐标绘图 在matlab中,用polar画的图形,如何使虚线圆多显示几个?...
- 史上最强DIY,手工制作一只会说话的机器狗
- 《构建之法》第八章自习感想与知识点
- php验证码显示碎图片,我的验证码只显示破碎的小图片
- Android NDK开发之 NEON使用介绍
- 利用辗转相除法求两个数的最大公约数
- windows10下 mysql5.7.24 免安装版 安装笔记
- 计算机思维的概念知识点,思维的基本特征知识点的理解
- 论文主题、引用量、中国机构 华人学者,KDD 2020 关键数据抢先看
- 【机器学习】ROC曲线和AUC面积
- 【HDLBits刷题笔记】Exams/ece241 2013 q7
- 十一、Spring Boot整合Redis(一)
- 未来人工智能发展面临的问题
- 如何将计算机桌面屏幕放大,电脑桌面内容放大怎么缩小
- EasyUI(2):PHP+EasyUI的增、删、改操作的完整示例
- 生产力工具-笔记、任务管理工具软件,让你的时间更加有用!