У меня есть XML, где каждый элемент ниже корня представляет собой строку; каждая строка состоит из ровно одного имени столбца и его значения столбца. Как мне преобразовать указанный XML в XMLTable?
Я пытался создать XMLTable из пути '/ root / line' (см. Код ниже).
with myxml as
(select '<root><line><column>X</column><value_of_column>1</value_of_column></line><line><column>Y</column><value_of_column>2</value_of_column></line></root>' xml
from dual)
select * from xmltable('/root/line' passing (select xml from myxml) columns "Name" varchar2(255) path '/root/line/column', "Value" varchar2(255) path '/root/line/value_of_column');
Я ожидаю, что результат будет:
Name | Value
------------
X | 1
Y | 2
Но фактическим выводом является сообщение об ошибке: ORA-19224: XPTY0004 - несоответствие статического типа XQuery: ожидается - node () * got - xs: string