2017-05-10 49 views
2

我有一個名爲一個名爲RunList_XML需要在Oracle 11g中查詢XML的價值

的XML XMLType列零件表有幾個單元代碼示例<Item> <Unit>420</Unit> </Item> <Item> <Unit>10</Unit> </Item> <Item> <Unit>0</Unit> </Item> 我要查詢取回所有部件 列表有420 一股股我似乎無法弄清楚如何得到這個使用= 420 OR =「420」

以下還給誤報

select * from Parts P 
    WHERE P.RunList_XML.extract('ArrayOfItem// /Unit/text()').getStringVal() like '%420' 

回答

1

試試這個我們荷蘭國際集團existsnode

select * from Parts P 
    WHERE existsnode(RunList_XML, 'ArrayOfItem//Item[Unit="420"]') = 1 

existsnode返回1,如果節點被發現,0,如果不是。

+0

完美的作品,非常感謝 –