sql >> Base de Datos >  >> RDS >> Oracle

Divida los resultados de la consulta después de cargar XML con fn:string-join en una tabla de Oracle

Bueno, eso es lo que se supone que debe hacer string-join:concatena valores que coinciden con XPath. Entonces, de hecho, lo que está buscando es solo su consulta sin la combinación de cadenas. No sé exactamente cómo se ve tu XML, pero sugeriría probar un SQL como este:

insert into table_a
(computer_brand,
 owner,
 address,
 serialnumber
)
select
 a.computer_brand,
 a.owner,
 a.address,
 a.serialnumber
from table_xml a,
 xmltable (xmlnamespaces('not mentioned due to security reasons' as "tns"),
 '//tns:Main' passing a.xml_file
 columns
 computer_brand      varchar2(41)  path 'tns:/@computer_brand',
 owner               varchar2(101) path 'tns:/@owner)',
 address             varchar2(101) path 'tns:/@address)',
 serialnumber        varchar2(21)  path 'tns:/serialnumber')
(+) k
where upper(file_name)=upper('xmlfile.xml');