• 企业400电话
  • 微网小程序
  • AI电话机器人
  • 电商代运营
  • 全 部 栏 目

    企业400电话 网络优化推广 AI电话机器人 呼叫中心 网站建设 商标✡知产 微网小程序 电商运营 彩铃•短信 增值拓展业务
    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
    from med_frequencydict a
    where a.frequency_code = 'BID'

    10. XMLCOLATTVAL(value_expr[,value_expr2],...)

    该函数用于生成XML块,参数value_expr用于指定列名或者别名作为属性名。

    示例: 

    复制代码 代码如下:
    SELECT xmlelement("row",xmlcolattval(a.frequency_code AS "编码", a.frequency_name as "名称")) xml
    from med_frequencydict a
    where a.frequency_code = 'BID'

    11. XMLCONCAT(XMLType_instance1[,XMLType_instance2],...)

    该函数用于连接多个XMLType实例,并生成新的XMLType实例。

    示例:

    复制代码 代码如下:
    select xmlconcat(xmltype('1'), xmltype('2'), xmltype('3'))
    from dual

    12. XMLSEQUENCE(xmltype_instance)

    该函数用于返回XMLType实例中顶级节点以下的VARRAY元素。

    示例:

    复制代码 代码如下:
    select extractvalue(column_value, '/row/医嘱内容') 医嘱内容
        from table(xmlsequence(extract((select value(a)
        from xmltable a
        where rownum = 1),
    '/root/detail/row')))

    13. UPDATEXML(XMLType_instance,Xpath_string,value_expr)

    该函数用于更新特定XMLType实例相应的节点路径的内容

    示例:

    复制代码 代码如下:
    select updatexml(xmltype('1名字12名字2'), '/root/row[no=2]/name', '新名字')
    from dual

    14. XMLTRANSFORM(xmltype_instance,xsl_ss)

    该函数用于将XMLType实例按照XSL样式进行转换,并生成新的XMLType实例

    15. DELETEXML(XMLType_instance,Xpath_string)

    该函数用于删除特定XMLType实例相应的节点路径的内容

    16.XML转换表

    复制代码 代码如下:
    SELECT * FROM XMLTABLE('$SQ/root/detail/row' PASSING
        (select value(a) from xmltable a) AS SQ
        COLUMNS 医嘱ID VARCHAR2(50) PATH '/row/医嘱ID',
        医嘱内容 VARCHAR2(200) PATH '/row/医嘱内容',
        频次 VARCHAR2(200) PATH '/row/频次',
        用法 VARCHAR2(200) PATH '/row/用法')
    order by 医嘱ID

    基本就是这样了,小编细心帮大家整理了一下代码格式,希望能帮到大家。

    您可能感兴趣的文章:
    • oracle 存储过程和函数例子
    • ORACLE常用数值函数、转换函数、字符串函数
    • Oracle中instr函数使用方法
    • 给Oracle添加split和splitstr函数的方法
    • oracle to_char函数将number转成string
    • Oracle round()函数与trunc()函数区别介绍
    • Oracle随机函数之dbms_random使用详解
    • ORACLE时间函数(SYSDATE)深入理解
    • Oracle to_date()函数的用法介绍
    • oracle中的trim函数使用介绍
    • Oracle to_char函数的使用方法
    • Oracle数学相关函数小结
    • Oracle 函数大全
    上一篇:Oracle数据库中创建自增主键的实例教程
    下一篇:Oracle 函数大全
  • 相关文章
  • 

    © 2016-2020 巨人网络通讯 版权所有

    《增值电信业务经营许可证》 苏ICP备15040257号-8

    Oracle 中XML处理函数介绍 Oracle,中,XML,处理,函数,介绍,