2017-07-20 17 views
0

xpathですべての子タグ名を選択する方法は?Oracle XML:子タグ名を抽出する

私はこのようなテーブルがあります。このように提出されたDATAにおけるいくつかのXMLデータと

CREATE TABLE Foo (
    DATA VARCHAR2(4000) NOT NULL ENABLE 
) 

<foo> 
    <a>some</a> 
    <b>another</b> 
    <c>some else<c> 
</foo> 

私は第二のレベルからすべてのタグを抽出したい:

select xmltype(DATA).extract('/foo/*').getRootElement() as MY_TAGS form Foo; 

(私はこのようなリストを期待した)

a 
b 
c 

しかし、私はnull値の結果得た:

(null) 
(null) 
(null) 

答えて

1
select * from xmltable('foo/*' passing xmltype('<foo> 
    <a>some</a> 
    <b>another</b> 
    <c>some else</c> 
</foo>') 
columns 
tag_name varchar2(100) path 'name()', 
tag_value varchar2(100) path 'text()'  
) 
関連する問題