1

我正在尝试从在 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

谢谢,汤姆

4

0 回答 0