Oracle 中中XML处理函数介绍处理函数介绍
1. EXTRACT((XMLType_instance,,Xpath_string))
该函数用于返回XML节点路径下的相应内容
示例:
代码如下:SELECT extract(value(a),’/root/main’) data FROM xmltable a ;
2. EXTRACTVALUE((XMLType_instance,Xpath_string)
该函数用于返回特定XML节点路径的数据
示例:
代码如下:SELECT extractvalue(value(a),’/root/main/姓名’) data FROM xmltable a ;
3. EXISTSNODE((XMLType_instance,,Xpath_string))
该函数用于确定特定的XML节点的路径是否存在,返回0表示节点不存在,返回1表示节点存在。
示例:
代码如下:SELECT existsnode(value(a),’/root/main/住院号’) data FROM xmltable a;
4. SYS_DBURIGEN({column|attribute})
该函数用于根据列或者属性生成类型为DBUrlType的URL
示例:
代码如下:SELECT sys_dburigen(a.DISPLAYNAME) aa FROM v_dept a WHERE a.DISPLAYNAME=’矽肺病医院’
5. SYS_XMLAGG((expr[,,fmt]))
该函数用于汇总所有XML文档,并生成一个XML文档。
示例:
代码如下:SELECT SYS_XMLAGG(SYS_XMLGEN(a.order_content)) xml_content
from doc_clinic_order a, clinics_item b, med_frequencydict c
where a.patient_id = ‘bd4b425e-a409-4b28-890d-d1d668fcf725’
and a.parentid = ‘0’
and a.route = b.item_id(+)
and a.frequency = c.frequency_id(+)
6. SYS_XMLGEN(expr[,fmt])
该函数用于根据数据库表的行和列生成XMLType实例。
7. XMLAGG((XMLType_instance[ORDER BY sort_list])
该函数用于汇总多个XML块,并生成XML文档。
示例:
代码如下:select xmlagg(xmlelement(“row”,xmlforest(a.frequency_id as “频次ID”, a.frequency_name as “频次名称”)))[] from
med_frequencydict a
8. XMLFOREST((value_expr1[,value_expr2],…)
该函数用于返回XML块
9. XMLELEMENT(identifier[,xml_attribute_clause][,value_expr])
该函数用于返回XMLType的实例。其中参数identifier用于指定元素名,参数xml_attribute_clause用于指定元素属性子句,参
数value_expr用于指定元素值。
示例:
代码如下:SELECT xmlelement(“row”,xmlcolattval(a.frequency_code AS “编码”,a.frequency_name as “名称”)) xml
评论10
最新资源