我正在尝试从oracle中存储为二进制xml的一些结构化xml中检索键和父键。我尝试过创建非结构化索引以及带有结构化组件的索引。结构化组件在针对XMLTABLE()执行SELECT时工作正常但我无法使用XMLTable检索父节点的值。因此,我尝试使用以下Xquery来检索父值,但这根本不使用索引。这种查询方式是否支持使用XmlIndexes?我无法在文档中找到任何说法。
SELECT y.*
FROM xml_data x, XMLTABLE(xmlnamespaces( DEFAULT 'namespace'),
'for $i in /foo/bar
return element r {
$i/someKey
,element parentKey { $i/../someKey }
}'
PASSING x.import_xml
COLUMNS
someKey VARCHAR2(100) PATH 'someKey'
,parentKey VARCHAR2(100) PATH 'parentKey'
) y
谢谢,汤姆