我需要检查是否存在XML标记,其中XML存储为CLOB。
我试过了existsNode
,但似乎遇到了麻烦。
只提供我感兴趣的XML(这是一个很大的):
<main requestType="create">
<CATEGORY_ID>5</CATEGORY_ID>
<NAME>Position Adhoc</NAME>
<VIEW_CONFIG>
<ViewConfig>
<localization value="true"></localization>
<DataSource dataFormat="XML" hasTotalRow="false" nodeDataFieldWidth="200" treeNodeDataField="0"></DataSource>
<Ribbon>
<Funds container="com.ssc.cfi.ribbon.fundbrowser.FundBrowser" enabled="true" entity="Portfolio" exclusiveGroup="" label="Portfolios" visible="true">
**<List** enabled="true" fundFilterState="ACCT" label="Portfolio" maxSelectionAllowed="1000" showActiveCloseFunds="false" showManager="false"></List>
<AllFunds enabled="true" entityName="AllFunds" showActiveCloseFunds="false"></AllFunds>
我需要查找XML标记“List”是否存在于XML中的任何位置。 XML数据作为clob存储在COL_A列中的TAB_A中。
试过这个,但是没有用,即使我们看到标签存在,它也会给我一个0的计数:
select count(1)
from tab_a
where existsNode(extract(xmltype(col_a),'//main'),'//List') = 1
使用existsNode还是xmlexists的任何想法?