oracle 解析xml xmltable

select x.*
  from xmltable(     '/root/healthExamination/examination' /*xpath到当前节点表达式*/ passing
                xmltype('<?xml version="1.0" encoding="utf-8"?>
                <root version="1.0" sender="mbelec">
                <healthExamination>
                <examination><argumentName>血压状态</argumentName><argumentValue>0</argumentValue><argumentUnit /></examination>
                <examination><argumentName>事件类型</argumentName><argumentValue>1</argumentValue><argumentUnit /></examination>
                <examination><argumentName>收缩压</argumentName><argumentValue>103</argumentValue><argumentUnit>mmHg</argumentUnit></examination>
                <examination><argumentName>舒张压</argumentName><argumentValue>74</argumentValue><argumentUnit>mmHg</argumentUnit></examination>
                <examination><argumentName>平均压</argumentName><argumentValue>83</argumentValue><argumentUnit>mmHg</argumentUnit></examination>
                <examination><argumentName>血压脉搏</argumentName><argumentValue>69</argumentValue><argumentUnit /></examination>
                </healthExamination>
                </root>')     
                columns 
                argumentName varchar2(30) path '/examination/argumentName' /*XPath 轴表达式*/,
                argumentValue varchar2(30) path '/examination/argumentValue'
                ) x;

在这里插入图片描述

两个节点都有相同的code,所以两个节点的信息都会获取到
在这里插入图片描述

  • 1
    点赞
  • 7
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
Oracle可以通过使用XMLType数据类型来解析XML数据。 以下是一个简单的例子,演示如何解析XML数据并从中提取值: 假设有一个包含XML数据的表,名为"xml_table",其中包含一个XML列名为"xml_data"。现在需要解析这个XML数据并从中提取值。 ```sql SELECT ExtractValue(XMLType(xml_data), '/root/element') AS Extracted_Value FROM xml_table; ``` 上述代码中,ExtractValue()函数用于从XML数据中提取值。第一个参数是XML数据类型,第二个参数是XPath表达式,用于指定要提取的元素或属性。 在此示例中,XPath表达式是"/root/element",它表示要提取XML数据根节点下名为"element"的元素的值。 注意,XPath表达式中的斜杠"/"表示元素的层级关系。例如,"/root/element"表示根节点下的"element"元素。 此外,可以使用XMLTable函数将XML数据转换为表格形式,并从中提取值。以下是一个示例: ```sql SELECT xt.Extracted_Value FROM xml_table x, XMLTable('/root/element' PASSING XMLType(x.xml_data) COLUMNS Extracted_Value VARCHAR2(100) PATH '.') xt; ``` 在此示例中,XMLTable()函数用于将XML数据转换为表格形式。第一个参数是XPath表达式,用于指定要提取的元素或属性。第二个参数是XML数据类型。第三个参数是列定义,用于指定要从XML数据中提取的列。 注意,XPath表达式中的点"."表示当前节点。在此示例中,XPath表达式"/root/element"将作为列定义中的路径参数传递,用于指定要提取的元素或属性。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值