В моем дб Oracle у меня есть записи как этот:
<ROOT>
<Event>
<Type>sldkfvjhkljh</Type>
<ID>591252</ID>
</Event>
<Data>
<File>
<Name>1418688.pdf</Name>
<URL>/591252/1418688.pdf</URL>
</File>
<File>
<Name>1418688.xml</Name>
<URL>/591252/1418688.xml</URL>
</File>
</Data>
</ROOT>
Я должен извлечь значение сначала <Name>
тег. Если я пробую:
Select xmltype(xml_data).extract('//Name[1]/text()').getStringVal() from MY_TABLE
Я добираюсь:
1418688.pdf1418688.xml
Почему, что и то, как я могу стать справедливым 1418688.pdf
?
Версия Oracle:
База данных Oracle 10 г Enterprise Edition выпуск 10.2.0.4.0 - 64bi
Я думаю, что оба элемента Name являются #1 в этом документе, потому что в своих узлах они каждый первый. Попробуйте //File[1]/Name/text()