当前位置:  开发笔记 > 数据库 > 正文

在Oracle SQL中将xpath值选择为单独的行

如何解决《在OracleSQL中将xpath值选择为单独的行》经验,为你挑选了0个好方法。

我需要从存储在Oracle数据库的CLOB列中的XML中选择一些值.我能想到的最好的是以下内容:

select extract(xmltype(COLUMN), 'xpath-expression').getStringVal() as XMLVAL from TABLE t;

问题是当XPATH选择多个节点时,值会连接在一起.我需要将每个选定的节点放在一个单独的行上.显然连接必须出现在getStringVal()中,我使用它,因为我需要在我的客户端(而不是XMLType)中有字符串.我应该使用什么而不是getStringVal()?

编辑:请注意,这里有一个类似的问题:Oracle Pl/SQL:循环遍历XMLTYPE节点 - 但我无法将其应用于我的案例.它使用两种不同的XPATH表达式,分离原则尚不清楚.

EDIT2:XML非常复杂,但基本上我需要找到"一些值"条目


在许多其他元素下埋葬的元素.我使用XPATH //*[@name="SOME_KEY"]/@value ,它成功找到具有SOME_KEY属性的所有XML元素的value属性.

推荐阅读
臭小子
这个屌丝很懒,什么也没留下!
DevBox开发工具箱 | 专业的在线开发工具网站    京公网安备 11010802040832号  |  京ICP备19059560号-6
Copyright © 1998 - 2020 DevBox.CN. All Rights Reserved devBox.cn 开发工具箱 版权所有