提取 xml 文件的内容
extract contents of xml file
我有一个来自 crmod 的 xml 文件(按需使用 oracle crm),我想提取记录数。 (即 17680)通过查询进入 table。我可以提取其他标签里面的xml接受记录计数。谁能指出正确的方向
<ListOfAllotmentUsage xmlns="urn:/crmondemand/xml/AllotmentUsage/Data" recordcount="17680" lastpage="false">
亲切的问候
里昂
您应该使用 @
来指定属性。
使用 XMLTABLE,
SELECT *
FROM xmltable(
xmlnamespaces(DEFAULT 'urn:/crmondemand/xml/AllotmentUsage/Data'),'ListOfAllotmentUsage'
passing xmltype('<ListOfAllotmentUsage xmlns="urn:/crmondemand/xml/AllotmentUsage/Data" recordcount="17680" lastpage="false"></ListOfAllotmentUsage>')
columns
rec_count NUMBER path '@recordcount'
);
使用 EXTRACTVALUE,
SELECT extractvalue(
xmltype('<ListOfAllotmentUsage xmlns="urn:/crmondemand/xml/AllotmentUsage/Data" recordcount="17680" lastpage="false"></ListOfAllotmentUsage>'),
'ListOfAllotmentUsage/@recordcount',
'xmlns="urn:/crmondemand/xml/AllotmentUsage/Data"'
)
FROM dual;
我有一个来自 crmod 的 xml 文件(按需使用 oracle crm),我想提取记录数。 (即 17680)通过查询进入 table。我可以提取其他标签里面的xml接受记录计数。谁能指出正确的方向
<ListOfAllotmentUsage xmlns="urn:/crmondemand/xml/AllotmentUsage/Data" recordcount="17680" lastpage="false">
亲切的问候
里昂
您应该使用 @
来指定属性。
使用 XMLTABLE,
SELECT *
FROM xmltable(
xmlnamespaces(DEFAULT 'urn:/crmondemand/xml/AllotmentUsage/Data'),'ListOfAllotmentUsage'
passing xmltype('<ListOfAllotmentUsage xmlns="urn:/crmondemand/xml/AllotmentUsage/Data" recordcount="17680" lastpage="false"></ListOfAllotmentUsage>')
columns
rec_count NUMBER path '@recordcount'
);
使用 EXTRACTVALUE,
SELECT extractvalue(
xmltype('<ListOfAllotmentUsage xmlns="urn:/crmondemand/xml/AllotmentUsage/Data" recordcount="17680" lastpage="false"></ListOfAllotmentUsage>'),
'ListOfAllotmentUsage/@recordcount',
'xmlns="urn:/crmondemand/xml/AllotmentUsage/Data"'
)
FROM dual;