Mega Code Archive

 
Categories / Oracle PLSQL Tutorial / XML
 

Individual fields from the XMLTYPEd column may be found using the EXTRACTVALUE function like this

SQL> SQL> --EXTRACTVALUE is an Oracle function that uses an XPath expression, SQL> SQL> CREATE TABLE testxml (id NUMBER(3), dt SYS.XMLTYPE); Table created. SQL> SQL> INSERT INTO testxml VALUES(111,   2  sys.xmltype.createxml(   3  '<?xml version="1.0"?>   4  <customer>   5  <name>Joe Smith</name>   6  <title>Mathematician</title>   7  </customer>'))   8  / 1 row created. SQL> SQL> SET LONG 2000 SQL> SQL> SELECT *   2  FROM testxml   3  / ID      DT ---------------------------------------------------------------------------------------------------- 111     <?xml version="1.0"?><customer><name>Joe Smith</name><title>Mathematician</title></customer> SQL> SQL> select EXTRACTVALUE(t.dt,'//customer/name') from testxml t; EXTRACTVALUE(T.DT,'//CUSTOMER/NAME') ----------------------------------------------------------------------------------------- Joe Smith SQL> SQL> drop table testxml; Table dropped. SQL>