版本:oracle 11g r2
今天遇到一个需求,原本存入在库里的数据是一个xml格式的数据,怎样展示出想要的一个键值。
oracle 在存储xml文件时常用的方式:1指定字段类型为clob 2.指定字段类型为xmltype
xmltype是oracle专门存放xml类型用的。
例:
create table t_xml(id int,content xmltype)
在定义的时候可以为xml专门定义成xmltype类型
如果是xmltype类型的字段 想要获取里面的键值可以直接使用extractvalue()函数 例:
select id,extractvalue(content,'/nodename1/nodename2') from table
其中nodename是键
如果content是clob的字段 ,需要先将字段转换成xmltype类型的字段
select id,extractvalue(xmltype(content),'/nodename1/nodename2') from table;
需要说明:
nodename1这个层次可以有多层,最后一项不要/ ,这个是返回一个值
阅读(2633) | 评论(0) | 转发(0) |