最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

使用Oracle操作xml格式數(shù)據(jù)的方法

 更新時(shí)間:2023年07月18日 10:38:50   作者:梁萌  
這篇文章主要介紹了使用Oracle操作xml格式數(shù)據(jù)的方法,Oracle 數(shù)據(jù)庫的概念和其它數(shù)據(jù)庫不一樣,這里的數(shù)據(jù)庫是一個(gè)操作系統(tǒng)只有一個(gè)庫,需要的朋友可以參考下

前期準(zhǔn)備

新建一張用來測(cè)試的表

-- Create table
create table XMLTEST
(
  id      NUMBER,
  content VARCHAR2(4000)
);

往表中插入數(shù)據(jù)

insert into XMLTEST (id, content)
values (1, '<root><app><id>1</id><name>張三</name><age>18</age></app><app><id>2</id><name>李四</name><age>20</age></app><app><id>3</id><name>王五</name><age>30</age></app></root>');
insert into XMLTEST (id, content)
values (2, '<root><app><id>1</id><name>張三</name><age>18</age></app></root>');

字段CONTENT的值為字符串格式的xml數(shù)據(jù),

ID為1的記錄結(jié)構(gòu)如下:

ID為2的記錄結(jié)構(gòu)如下:

下面使用sql對(duì)xml數(shù)據(jù)進(jìn)行查詢:

示例一:

將字符串轉(zhuǎn)為xml格式

select xmltype(CONTENT)  vxml from xmltest;

 示例二:

返回一個(gè)節(jié)點(diǎn)下的所有值

返回id為1的記錄,所有的name的值

--extract 返回一個(gè)節(jié)點(diǎn)下的所有值
select  extract(xmltype(CONTENT), 'root/app/name') vxml from xmltest where id = 1;

示例三:

將xml數(shù)據(jù)轉(zhuǎn)為表數(shù)據(jù)格式

當(dāng)xml只有一個(gè)節(jié)點(diǎn)時(shí)(ID=2的記錄)

--extractvalue只能返回一個(gè)節(jié)點(diǎn)的一個(gè)值  
select x.id tblid,
extractvalue(xmltype(x.CONTENT),'root/app/id') as id,
extractvalue(xmltype(x.CONTENT),'root/app/name') as name,
extractvalue(xmltype(x.CONTENT),'root/app/age') as age
from xmltest x where x.id = 2;

當(dāng)xml有多個(gè)節(jié)點(diǎn)時(shí)(ID=1的記錄)

--table和XMLSequence 將xml節(jié)點(diǎn)數(shù)據(jù)轉(zhuǎn)為表數(shù)據(jù)格式
select  x.id tblid,
extractValue(value(newval),'/app/id') id,
extractValue(value(newval),'/app/name') name,
extractValue(value(newval),'/app/age') name
from xmltest x,
table(XMLSequence( extract(xmltype(x.CONTENT), 'root/app') )) newval
where x.id = 1;

到此這篇關(guān)于使用Oracle操作xml格式數(shù)據(jù)的方法的文章就介紹到這了,更多相關(guān)Oracle操作xml格式數(shù)據(jù)內(nèi)容請(qǐng)搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!

相關(guān)文章

最新評(píng)論

贵州省| 垦利县| 中山市| 双峰县| 江城| 临潭县| 隆安县| 泽库县| 纳雍县| 沈阳市| 龙井市| 建昌县| 赣榆县| 常熟市| 丹寨县| 曲麻莱县| 乐清市| 瑞昌市| 湛江市| 凤庆县| 陕西省| 玉门市| 长武县| 石棉县| 万宁市| 桑日县| 福贡县| 双桥区| 宁陵县| 东山县| 黄山市| 阿拉善右旗| 江安县| 连州市| 威海市| 托克托县| 内丘县| 都兰县| 满城县| 张家界市| 民丰县|