我面临着从现有xml子树中删除名称空间的问题。
例如:我有一个表,其中有一个字段数据类型为xmltype。其中一个条目包含此xml:
<Item xmlns="http://www.w3.org/2001/XMLSchema-instance">
<Box>Blaff</Box>
<Door>Steal</Door>
<Chair>Wood</Chair>
</Item>我想删除名称空间-即:
<Item>
<Box>Black-box</Box>
<Door>Steal</Door>
<Chair>Wood</Chair>
</Item>你有什么建议吗?-我试过使用UPDATE()函数,但没有成功。非常感谢你的帮助。
发布于 2014-09-18 19:38:34
一种想法是将其转换为clob,然后替换名称空间字符串并将其转换回xml:
with xtab as (
select xmltype('<Item xmlns="http://www.w3.org/2001/XMLSchema-instance">
<Box>Blaff</Box>
<Door>Steal</Door>
<Chair>Wood</Chair>
</Item>') my_xml from dual)
select xmltype(replace(xmltype.getclobval(my_xml),
' xmlns="http://www.w3.org/2001/XMLSchema-instance"', '')) clo
from xtab;https://stackoverflow.com/questions/24308225
复制相似问题