从XMLTYPE列中提取标头

时间:2016-07-05 12:34:20

标签: xml qxmlquery

我在表中包含XMLTYPE列,其中包含值:

<header att1 = '1' att2 = '2' att3 = '3'>
    <tag1>val1</tag1>
    <tag2>val2</tag2>
    <tag3>val3</tag3>
</header>

我想提取到XMLTYPE变量

<header att1 = '1' att2 = '2' att3 = '3'/>

有人可以帮我解决这个问题,也许可以指点我进行XMLQUERY培训吗?

非常感谢, Mikcutu。

1 个答案:

答案 0 :(得分:0)

在深入研究XQuery之后,我找到了答案:

select xmlquery(q'$ for $i in header 
                    return <header att1 = '{$i/@att1}' 
                                   att2= '{$i/@att2}' 
                                   att3= '{$i/@att3}'/>$' 
                    passing xml_column 
                    returning content) 
from table_name 
where condition = true;