在 Oracle 中获取属性名称的 XPath

XPath to get attribute names in Oracle

我有一个 XML 文件,例如:

<a b="123" c="456"/>

我想使用 Oracle SQL 中的 xpath 获取所有属性名称和值。正在执行

select extractvalue(value(p), 'text()')
  from xmltable('/*/@*' passing xmltype('<a b="123" c="456"/>')) p;

我只得到["123","456"],但我也想得到["b", "c"]。我该怎么做?

/*/@*更改为/*/@*/local-name()