0

XMLがCLOBとして格納されているXMLタグの存在を確認する必要があります。

やってみ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データは、列COL_AのTAB_AにCLOBとして格納されます。

これを試しましたが、機能しませんでした。タグが存在することがわかりますが、カウントは0になります。

select count(1) 
from tab_a
where existsNode(extract(xmltype(col_a),'//main'),'//List') = 1

presentNodeまたはxmlexistsのいずれかを使用した考えはありますか?

4

0 に答える 0