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

importar datos XML en Oracle DB

Puede usar una cláusula XMLTable para obtener los datos en forma relacional:

select x.cd_uid
from testtable2 t
cross join xmltable(xmlnamespaces(default 'http://xxxxxxxxxxxxxx'),
  '/records/REC'
  passing t.xml_file 
  columns cd_uid varchar2(20) path 'UID'
) x;

CD_UID             
--------------------
UID_number          

Tienes un espacio de nombres en los records nodo, por lo que debe incluirlo a través de un xmlnamespaces cláusula; como solo tiene uno, lo he configurado como predeterminado para que no tenga que saturar el XPath con referencias a él.