需要一个存有xml内容的字段中的数据,要怎么取?用sql 10C

图片说明图片说明图片说明
红框圈起来的字段打开后是一段xml如第二张图,现在需要图中圈起来的数值,然后变成像第三张图这样的显示要怎么操作?求大神帮忙(详细)
百度了这个方法extractvalue,但是不会用,一直报错。(用sql语句实现,不是Java。要在plsql中查出这些数据,然后打印excel)

4个回答

oracle支持xml的解析,写一个存储过程,参考https://www.cnblogs.com/xiaogan-GPL/p/9760000.html

下面方法是将xml字符串或blob转换为document对象。然后可以使用xpath在document中快速搜索到你需要的Element

private Document setStrToDoc(String str){
        Document d = null;
        try{
            //SAXReader saxReader = new SAXReader();
            //d = saxReader.read(new ByteArrayInputStream(str.getBytes()));
            d = DocumentHelper.parseText(str);
        }catch (Exception e){
            System.out.println("String转Document错误!");
        }
        return d;
    }

    private Document setBlobToDoc(Blob blob){
        InputStream input = null;
        Document d = null;
        try{
            input = blob.getBinaryStream();
            SAXReader s=new SAXReader();
            d=s.read(input);
        }catch (Exception e){

        } finally {
            try {
                //关闭输出流
                if(input != null)
                    input.close();
            } catch (IOException e) {
                e.printStackTrace();
            }
        }
        return d;
    }
weixin_34449894
技术阿道 回复今天是星期五: 不是
大约一年之前 回复
xsb_20171227
今天是星期五 回复weixin_34449894: 这xml字符串是你自己存的?
大约一年之前 回复
xsb_20171227
今天是星期五 这xml字符串是你自己存的?
大约一年之前 回复
weixin_34449894
技术阿道 不是Java,要用sql实现
大约一年之前 回复

用kettle等大数据清洗工具进行提取比较好点。而且是建模形式。

plsql中解析XML字段值,可以参考链接
https://blog.csdn.net/dazuiba008/article/details/85699585

Csdn user default icon
上传中...
上传图片
插入图片
抄袭、复制答案,以达到刷声望分或其他目的的行为,在CSDN问答是严格禁止的,一经发现立刻封号。是时候展现真正的技术了!
立即提问
相关内容推荐