Convert XML to Columns

Contribute from: Tim Hartman (TX3)

Note: Used with the Genilogix (now Avnet) eApprove rules engine

 

DB TYPE:           ORACLE 11g

Query:

WITH params AS
(SELECT sys.xmltype (cset_value) AS params_xml
FROM common_settings
WHERE cset_category = 'GLX_Config'
AND cset_name = 'Req'
)
SELECT
p_uiTab,
p_svName,
p_order,
p_uiDisplay,
p_dataType,
p_addlInfo,
p_defaultValue,
p_required,
p_documentation
FROM
params,
xmltable (
'//qcActions/qcActionList[@name="Configure Project Parameters"]//configData'
passing params.params_xml
columns
p_uitab VARCHAR2 (250) PATH '//configData/@uiTab',
p_svname VARCHAR2 (250) PATH '//configData/@svName',
p_order NUMBER PATH '//configData/@order',
p_uidisplay VARCHAR2 (250) PATH '//configData/@uiDisplay',
p_datatype VARCHAR2 (250) PATH '//configData/@dataType',
p_addlinfo VARCHAR2 (250) PATH '//configData/@addlInfo',
p_defaultvalue VARCHAR2 (250) PATH '//configData/@defaultValue',
p_required VARCHAR2 (250) PATH '//configData/@required',
p_documentation CLOB PATH '//configData/@documentation'
) a