通过SQL查询XML

时间:2014-11-18 07:41:16

标签: sql xml enums db2 ibm-db2

我有一个XML列:

<xmlList> 
   <XMLEntity> 
      <sug>ACHER</sug>
   </XMLEntity>

  <XMLEntity> 
      <sug>DOA</sug>
   </XMLEntity>
</xmlList>

sug只能包含枚举(ACHERDOA)。我想检查是否有sug没有这些值之一。

通过这种方式,我得到了其中其中一个枚举值的sug节点:

SELECT XMLSERIALIZE(XMLQUERY ('//xmlList/XMLEntity/sug[.="ACHER"]' passing 
KTOVET ) as char large object) as XXX ,

XMLSERIALIZE(XMLQUERY ('//xmlList/XMLEntity/sug[.="DOA"]' passing 
KTOVET ) as char large object) as YYY   

FROM "TABLE" 

我希望{<1}}个节点的值不是其中一个枚举值。可能? 如何获得其值为#34; ACHER&#34;?

的sug节点

1 个答案:

答案 0 :(得分:1)

SELECT XMLSERIALIZE(XMLQUERY ('//xmlList/XMLEntity/sug[.!="ACHER" and .!="DOA"]'  
passing KTOVET ) as char large object) as XXX

FROM "TABLE"