My XML is as follows
<data> <row> <id>1</id> <name>John</name> <name>Jack</name> </row> <row> <id>2</id> <name>Scott</name> <name>Chuck</name> <name>Kim</name> </row> </data>
I would like to:
->1 -->John -->Jack ->2 -->Scott -->Chuck -->Kim
My current code is as follows:
DECLARE X XMLTYPE := XMLTYPE('<?xml version="1.0" ?> <data> <row> <id>1</id> <name>John</name> <name>Jack</name> </row> <row> <id>2</id> <name>Scott</name> <name>Chuck</name> <name>Kim</name> </row> </data>'); BEGIN FOR R IN (SELECT EXTRACTVALUE(VALUE(P), '/row/id/text()') AS NAME FROM TABLE(XMLSEQUENCE(EXTRACT(X, '//data/row'))) P) LOOP DBMS_OUTPUT.PUT_LINE('-->' || R.NAME); END LOOP; END;
I will need another loop inside the line to scroll the name tag, but I don't know how to do it.
It would be helpful to appreciate a little help.
source share