0

我有一张从两列构建的人员表,第一列是 id,第二列是 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.

提前谢谢你

4

1 回答 1

2

您在使用 EXTRACTVALUE 时遇到了什么样的问题?

因为它似乎是你需要的......

类似的东西SELECT EXTRACTVALUE(my_xml_column, '/Person/name') FROM my_table WHERE id=;应该'First Last'按要求返回...

于 2016-09-25T20:40:47.840 回答