регулярные выражения оракула sql

У меня есть таблица людей, которая состоит из двух столбцов: первый - идентификатор, а второй - XML, в котором подсчитываются данные о человеке. Например, XML-файл человека может быть:

<Person>
    <name>First Last</name>
    <address>5 Champ de Mars</address>
    <city>Paris</city>
    <country>France</country>
    <phone-number>+3312345</phone-number>
</Person>

Я хотел бы знать, как я могу извлечь значение каждого из параметров в XML, используя regexp_substr, я пытался использовать функцию EXTRACTVALUE, которая вызвала у меня слишком много проблем. Я порчу оракула. Например, если запрос XML, который я дал: select regexp_substr(XML_file, 'pattern name') from peoples where id = 1;, приведет к: First Last.

Заранее спасибо Йонатан


person Yonatan    schedule 25.09.2016    source источник


Ответы (1)


С какими проблемами вы столкнулись при использовании EXTRACTVALUE?

Потому что это, кажется, то, что вам нужно...

Что-то вроде строк SELECT EXTRACTVALUE(my_xml_column, '/Person/name') FROM my_table WHERE id=; должно возвращать 'First Last' по запросу...

person Nadia Cerezo    schedule 25.09.2016