我知道如何在oracle中解析xml它是这样的
select extractvalue(column_value, 'CIRS/CIR/@applicantId') applicantId
into applicantId
from CIBIL_BINARY_INPUT ,table(xmlsequence(xmltype(ded_enq_xml)))
现在我有了如下所示的xml文件
<library>
<book>
<name>Harry potter</name>
<author>Harry potter</author>
</book>
<book>
<name> watson </name>
<author>Harry watson </author>
</book>
<book>
<name> john </name>
<author> potter</author>
</book>
</library>
可以看到book节点重复了多次
我如何提取它,以便我可以在我的library
表中插入3个不同的'book'行。
请建议。
似乎您的第一个问题是从xml中提取多本书。可以这样解决:
select
extractvalue(column_value, '/book/name') name,
extractvalue(column_value, '/book/author') author
from
table(xmlsequence(extract(xmltype('<library><book>...</book><book>...</book>...</library>'), '/library/book')));