2010-07-19 55 views
0

我需要使用sql字符串在XML文件中選擇特定的節點名稱?如何使用Oracle SQL查詢在XML中選擇特定節點名稱?

Sample XML structure 

    <Root> 
    <Body> 
     <Car> // This can be "Bike", "ship", "Train"... ect 
     <name value="figo"/> 
     </Car> 
    </Body> 
</Root> 

我想從表A,其中運行一個查詢這將取什麼節點名稱出現在XML「汽車」或「火車」或「自行車」等..

選擇* .. ...?

TableA具有存儲XML的CLOB類型的列「Message」。

-Praveen

回答

0

,就可以把CLOB類型XMLTYPE(或考慮在桌子上使用XMLTYPE列)。處理XMLTYPE時,您可以運行XPATH,例如:

SELECT extractvalue(xml_col, '/*/Body/*/name/@value') 
FROM TableA 

或提取xml片段。

編輯:在XPath中將'Car'更改爲*,重新閱讀該問題。

相關問題