0

我正在尝试从 BLOB 文件中读取和打印特定标签值之一。在我的例子中,BLOB 数据存储在数据库中,二进制文件中的内容是 XML 但二进制类型。

我只能获得其中一个重复标签的第一个值。DATA_VALUE 是列名。

SELECT dbms_output.put_line(utl_raw.cast_to_varchar2( dbms_lob.substr(DATA_VALUE, 8,DBMS_LOB.INSTR(DATA_VALUE,utl_raw.cast_to_raw('<MATNR>000000000'),1,1)+17)) FROM NES.WLI_DB WHERE ID = '0000000331756259'; 

结果:- 12268646

如何列出标签的所有值而不重复并列出它们,以便我可以将它们用作其他 SQL 查询的输入?

我尝试通过将 BLOB 内容获取到 Cursor 来使用迭代 FOR 循环,但我只能获得第一次出现的标记。

随着每个此类文件的行数越来越多,是否有可能递归读取和显示所需信息而没有重复值?

这是存储在表的 DATA_VALUE 列中的 BLOB 数据:

   <?xml version="1.0" encoding="UTF-8"?>
<_-GLB_-OGTX_DESADV01_CUST_ASN xmlns:SOAP="http://schemas.xmlsoap.org/soap/envelope/">
    <IDOC BEGIN="1">
        <E1EDK08 SEGMENT="1">
            <WAERK>AUD</WAERK>
            <_-GLB_-OGT_E1EDK08_01 SEGMENT="1">
                <REPEAT_COUNT>01</REPEAT_COUNT>
                <TOTAL_PALLETS> 25</TOTAL_PALLETS>
                <TOTAL_SHPD_QTY>1735.000</TOTAL_SHPD_QTY>
                <TOTAL_ORD_QTY>1735.000</TOTAL_ORD_QTY>
                <VOLUM>29300.964</VOLUM>
                <VOLEH>DMQ</VOLEH>
                <SEAL01>9428603</SEAL01>
                <CHARFIELD1>CS</CHARFIELD1>
                <CHARFIELD2>CS</CHARFIELD2>
            </_-GLB_-OGT_E1EDK08_01>
            <E1EDP07 SEGMENT="1">
                <BSTNK>LDP5877367</BSTNK>
                <POSEX>000010</POSEX>
                <E1EDP09 SEGMENT="1">
                    <VBELN>0820046682</VBELN>
                    <POSNR>000010</POSNR>
                    <MATNR>000000000012268648</MATNR>
                    <WERKS>8819</WERKS>
                    <LGORT>0001</LGORT>
                    <CHARG>7186T11101</CHARG>
                    <LFIMG>1.000</LFIMG>
                    <VRKME>CS</VRKME>
                    <BTGEW>250.000</BTGEW>
                    <NTGEW>200.000</NTGEW>
                    <GEWEI>GRM</GEWEI>
                    <VOLUM>3.020</VOLUM>
                    <VOLEH>DMQ</VOLEH>
                    <ARKTX>Aspiration Tube LATTISSIMA+ (50Pc) XI</ARKTX>
                    <EANNR>7640154060593</EANNR>
                    <STAWN>85169000</STAWN>
                    <EXART>1</EXART>
                    <HERKL>CH</HERKL>
                    <GRWRT>95.13</GRWRT>
                    <DOKPF>X</DOKPF>
                    <ABRDT>00000000</ABRDT>
                    <_-GLB_-OGT_E1EDP09_01 SEGMENT="1">
                        <ORDQTY>1.000</ORDQTY>
                        <ORDUNIT>CS</ORDUNIT>
                        <QPRODDAT>20170822</QPRODDAT>
                        <VFDAT>20271231</VFDAT>
                        <QTYFIELD1>1.000</QTYFIELD1>
                        <UOMFIELD1>CS</UOMFIELD1>
                        <QTYFIELD2>1.000</QTYFIELD2>
                        <UOMFIELD2>CS</UOMFIELD2>
                    </_-GLB_-OGT_E1EDP09_01>
                    <_-GLB_-RGT_DYN_SEG_05 SEGMENT="1">
                        <QUALIFIER>CSPERLAY</QUALIFIER>
                        <FIELDVAL1>44.000</FIELDVAL1>
                    </_-GLB_-RGT_DYN_SEG_05>
                    <_-GLB_-RGT_DYN_SEG_05 SEGMENT="1">
                        <QUALIFIER>LAYPERPAL</QUALIFIER>
                        <FIELDVAL1>10.000</FIELDVAL1>
                    </_-GLB_-RGT_DYN_SEG_05>
                </E1EDP09>
            </E1EDP07>
            <E1EDP07 SEGMENT="1">
                <BSTNK>LDP5877367</BSTNK>
                <POSEX>000020</POSEX>
                <E1EDP09 SEGMENT="1">
                    <VBELN>0820046682</VBELN>
                    <POSNR>000020</POSNR>
                    <MATNR>000000000012350651</MATNR>
                    <WERKS>8819</WERKS>
                    <LGORT>0001</LGORT>
                    <LFIMG>56.000</LFIMG>
                    <VRKME>CS</VRKME>
                    <BTGEW>218.400</BTGEW>
                    <NTGEW>217.280</NTGEW>
                    <GEWEI>KGM</GEWEI>
                    <VOLUM>1563.184</VOLUM>
                    <VOLEH>DMQ</VOLEH>
                    <ARKTX>Case Corr NESPRS 250Caps 20PcN1XI</ARKTX>
                    <EANNR>7630039622299</EANNR>
                    <STAWN>48191000</STAWN>
                    <EXART>1</EXART>
                    <HERKL>CH</HERKL>
                    <GRWRT>405.46</GRWRT>
                    <ABRDT>00000000</ABRDT>
                    <_-GLB_-OGT_E1EDP09_01 SEGMENT="1">
                        <ORDQTY>56.000</ORDQTY>
                        <ORDUNIT>CS</ORDUNIT>
                        <QTYFIELD1>56.000</QTYFIELD1>
                        <UOMFIELD1>CS</UOMFIELD1>
                        <QTYFIELD2>56.000</QTYFIELD2>
                        <UOMFIELD2>CS</UOMFIELD2>
                    </_-GLB_-OGT_E1EDP09_01>
                    <_-GLB_-RGT_DYN_SEG_05 SEGMENT="1">
                        <QUALIFIER>CSPERLAY</QUALIFIER>
                        <FIELDVAL1>4.000</FIELDVAL1>
                    </_-GLB_-RGT_DYN_SEG_05>
                    <_-GLB_-RGT_DYN_SEG_05 SEGMENT="1">
                        <QUALIFIER>LAYPERPAL</QUALIFIER>
                        <FIELDVAL1>14.000</FIELDVAL1>
                    </_-GLB_-RGT_DYN_SEG_05>
                </E1EDP09>
            </E1EDP07>
            <E1EDP07 SEGMENT="1">
                <BSTNK>LDP5877367</BSTNK>
                <POSEX>000030</POSEX>
                <E1EDP09 SEGMENT="1">
                    <VBELN>0820046682</VBELN>
                    <POSNR>000030</POSNR>
                    <MATNR>000000000012302120</MATNR>
                    <WERKS>8819</WERKS>
                    <LGORT>0001</LGORT>
                    <CHARG>7242T182M</CHARG>
                    <LFIMG>7.000</LFIMG>
                    <VRKME>CS</VRKME>
                    <BTGEW>9.590</BTGEW>
                    <NTGEW>8.400</NTGEW>
                    <GEWEI>KGM</GEWEI>
                    <VOLUM>29.400</VOLUM>
                    <VOLEH>DMQ</VOLEH>
                    <ARKTX>NESPRS Sugar Sachet 1.2kg (300pc) N1 XI</ARKTX>
                    <EANNR>7630030392412</EANNR>
                    <STAWN>17019990</STAWN>
                    <EXART>1</EXART>
                    <HERKL>NL</HERKL>
                    <GRWRT>16.82</GRWRT>
                    <DOKPF>X</DOKPF>
                    <ABRDT>00000000</ABRDT>
                    <_-GLB_-OGT_E1EDP09_01 SEGMENT="1">
                        <ORDQTY>7.000</ORDQTY>
                        <ORDUNIT>CS</ORDUNIT>
                        <QPRODDAT>20170830</QPRODDAT>
                        <VFDAT>20190830</VFDAT>
                        <QTYFIELD1>7.000</QTYFIELD1>
                        <UOMFIELD1>CS</UOMFIELD1>
                        <QTYFIELD2>7.000</QTYFIELD2>
                        <UOMFIELD2>CS</UOMFIELD2>
                    </_-GLB_-OGT_E1EDP09_01>
                    <_-GLB_-RGT_DYN_SEG_05 SEGMENT="1">
                        <QUALIFIER>CSPERLAY</QUALIFIER>
                        <FIELDVAL1>30.000</FIELDVAL1>
                    </_-GLB_-RGT_DYN_SEG_05>
                    <_-GLB_-RGT_DYN_SEG_05 SEGMENT="1">
                        <QUALIFIER>LAYPERPAL</QUALIFIER>
                        <FIELDVAL1>11.000</FIELDVAL1>
                    </_-GLB_-RGT_DYN_SEG_05>
                </E1EDP09>
            </E1EDP07>
            <E1EDP07 SEGMENT="1">
                <BSTNK>LDP5877367</BSTNK>
                <POSEX>000040</POSEX>
                <E1EDP09 SEGMENT="1">
                    <VBELN>0820046682</VBELN>
                    <POSNR>000040</POSNR>
                    <MATNR>000000000012268362</MATNR>
                    <WERKS>8819</WERKS>
                    <LGORT>0001</LGORT>
                    <LFIMG>0.000</LFIMG>
                    <VRKME>CS</VRKME>
                    <BTGEW>0.000</BTGEW>
                    <NTGEW>0.000</NTGEW>
                    <VOLUM>0.000</VOLUM>
                    <ARKTX>NESPRS Pro DspbPapCup 40(55x175ml/6oz)XI</ARKTX>
                    <EANNR>7640145295027</EANNR>
                    <STAWN>48236910</STAWN>
                    <EXART>1</EXART>
                    <HERKL>CN</HERKL>
                    <GRWRT>70.25</GRWRT>
                    <DOKPF>X</DOKPF>
                    <ABRDT>00000000</ABRDT>
                    <_-GLB_-OGT_E1EDP09_01 SEGMENT="1">
                        <ORDQTY>0.000</ORDQTY>
                        <ORDUNIT>CS</ORDUNIT>
                        <QTYFIELD1>2.000</QTYFIELD1>
                        <UOMFIELD1>CS</UOMFIELD1>
                        <QTYFIELD2>0.000</QTYFIELD2>
                        <UOMFIELD2>CS</UOMFIELD2>
                    </_-GLB_-OGT_E1EDP09_01>
                    <_-GLB_-RGT_DYN_SEG_05 SEGMENT="1">
                        <QUALIFIER>CSPERLAY</QUALIFIER>
                        <FIELDVAL1>4.000</FIELDVAL1>
                    </_-GLB_-RGT_DYN_SEG_05>
                    <_-GLB_-RGT_DYN_SEG_05 SEGMENT="1">
                        <QUALIFIER>LAYPERPAL</QUALIFIER>
                        <FIELDVAL1>4.000</FIELDVAL1>
                    </_-GLB_-RGT_DYN_SEG_05>
                </E1EDP09>
                <E1EDP09 SEGMENT="1">
                    <VBELN>0820046682</VBELN>
                    <POSNR>900001</POSNR>
                    <MATNR>000000000012268362</MATNR>
                    <WERKS>8819</WERKS>
                    <LGORT>0001</LGORT>
                    <CHARG>7212T145NA</CHARG>
                    <LFIMG>1.000</LFIMG>
                    <VRKME>CS</VRKME>
                    <BTGEW>12.000</BTGEW>
                    <NTGEW>11.600</NTGEW>
                    <GEWEI>KGM</GEWEI>
                    <VOLUM>91.210</VOLUM>
                    <VOLEH>DMQ</VOLEH>
                    <ARKTX>NESPRS Pro DspbPapCup 40(55x175ml/6oz)XI</ARKTX>
                    <EANNR>7640145295027</EANNR>
                    <STAWN>48236910</STAWN>
                    <EXART>1</EXART>
                    <HERKL>CN</HERKL>
                    <DOKPF>X</DOKPF>
                    <ABRDT>00000000</ABRDT>
                    <_-GLB_-OGT_E1EDP09_01 SEGMENT="1">
                        <ORDQTY>1.000</ORDQTY>
                        <ORDUNIT>CS</ORDUNIT>
                        <QPRODDAT>20170731</QPRODDAT>
                        <VFDAT>20270731</VFDAT>
                        <QTYFIELD1>2.000</QTYFIELD1>
                        <UOMFIELD1>CS</UOMFIELD1>
                        <QTYFIELD2>1.000</QTYFIELD2>
                        <UOMFIELD2>CS</UOMFIELD2>
                    </_-GLB_-OGT_E1EDP09_01>
                    <_-GLB_-RGT_DYN_SEG_05 SEGMENT="1">
                        <QUALIFIER>CSPERLAY</QUALIFIER>
                        <FIELDVAL1>4.000</FIELDVAL1>
                    </_-GLB_-RGT_DYN_SEG_05>
                    <_-GLB_-RGT_DYN_SEG_05 SEGMENT="1">
                        <QUALIFIER>LAYPERPAL</QUALIFIER>
                        <FIELDVAL1>4.000</FIELDVAL1>
                    </_-GLB_-RGT_DYN_SEG_05>
                </E1EDP09>
                <E1EDP09 SEGMENT="1">
                    <VBELN>0820046682</VBELN>
                    <POSNR>900002</POSNR>
                    <MATNR>000000000012268362</MATNR>
                    <WERKS>8819</WERKS>
                    <LGORT>0001</LGORT>
                    <CHARG>7218T145NA</CHARG>
                    <LFIMG>1.000</LFIMG>
                    <VRKME>CS</VRKME>
                    <BTGEW>12.000</BTGEW>
                    <NTGEW>11.600</NTGEW>
                    <GEWEI>KGM</GEWEI>
                    <VOLUM>91.210</VOLUM>
                    <VOLEH>DMQ</VOLEH>
                    <ARKTX>NESPRS Pro DspbPapCup 40(55x175ml/6oz)XI</ARKTX>
                    <EANNR>7640145295027</EANNR>
                    <STAWN>48236910</STAWN>
                    <EXART>1</EXART>
                    <HERKL>CN</HERKL>
                    <DOKPF>X</DOKPF>
                    <ABRDT>00000000</ABRDT>
                    <_-GLB_-OGT_E1EDP09_01 SEGMENT="1">
                        <ORDQTY>1.000</ORDQTY>
                        <ORDUNIT>CS</ORDUNIT>
                        <QPRODDAT>20170806</QPRODDAT>
                        <VFDAT>20271231</VFDAT>
                        <QTYFIELD1>2.000</QTYFIELD1>
                        <UOMFIELD1>CS</UOMFIELD1>
                        <QTYFIELD2>1.000</QTYFIELD2>
                        <UOMFIELD2>CS</UOMFIELD2>
                    </_-GLB_-OGT_E1EDP09_01>
                    <_-GLB_-RGT_DYN_SEG_05 SEGMENT="1">
                        <QUALIFIER>CSPERLAY</QUALIFIER>
                        <FIELDVAL1>4.000</FIELDVAL1>
                    </_-GLB_-RGT_DYN_SEG_05>
                    <_-GLB_-RGT_DYN_SEG_05 SEGMENT="1">
                        <QUALIFIER>LAYPERPAL</QUALIFIER>
                        <FIELDVAL1>4.000</FIELDVAL1>
                    </_-GLB_-RGT_DYN_SEG_05>
                </E1EDP09>
            </E1EDP07>
            <E1EDP07 SEGMENT="1">
                <BSTNK>LDP5877367</BSTNK>
                <POSEX>000050</POSEX>
                <E1EDP09 SEGMENT="1">
                    <VBELN>0820046682</VBELN>
                    <POSNR>000050</POSNR>
                    <MATNR>000000000012268443</MATNR>
                    <WERKS>8819</WERKS>
                    <LGORT>0001</LGORT>
                    <CHARG>6363T145NA</CHARG>
                    <LFIMG>1.000</LFIMG>
                    <VRKME>CS</VRKME>
                    <BTGEW>6.120</BTGEW>
                    <NTGEW>6.120</NTGEW>
                    <GEWEI>KGM</GEWEI>
                    <VOLUM>88.510</VOLUM>
                    <VOLEH>DMQ</VOLEH>
                    <ARKTX>NESPRS TakeAwayCupLid36(50x350ml/12oz)XI</ARKTX>
                    <EANNR>7630030309182</EANNR>
                    <STAWN>39235090</STAWN>
                    <EXART>1</EXART>
                    <HERKL>CN</HERKL>
                    <GRWRT>44.09</GRWRT>
                    <DOKPF>X</DOKPF>
                    <ABRDT>00000000</ABRDT>
                    <_-GLB_-OGT_E1EDP09_01 SEGMENT="1">
                        <ORDQTY>1.000</ORDQTY>
                        <ORDUNIT>CS</ORDUNIT>
                        <QPRODDAT>20170629</QPRODDAT>
                        <VFDAT>20271231</VFDAT>
                        <QTYFIELD1>1.000</QTYFIELD1>
                        <UOMFIELD1>CS</UOMFIELD1>
                        <QTYFIELD2>1.000</QTYFIELD2>
                        <UOMFIELD2>CS</UOMFIELD2>
                    </_-GLB_-OGT_E1EDP09_01>
                    <_-GLB_-RGT_DYN_SEG_05 SEGMENT="1">
                        <QUALIFIER>CSPERLAY</QUALIFIER>
                        <FIELDVAL1>3.000</FIELDVAL1>
                    </_-GLB_-RGT_DYN_SEG_05>
                    <_-GLB_-RGT_DYN_SEG_05 SEGMENT="1">
                        <QUALIFIER>LAYPERPAL</QUALIFIER>
                        <FIELDVAL1>6.000</FIELDVAL1>
                    </_-GLB_-RGT_DYN_SEG_05>
                </E1EDP09>
            </E1EDP07>
            <E1EDP07 SEGMENT="1">
                <BSTNK>LDP5877367</BSTNK>
                <POSEX>000060</POSEX>
                <E1EDP09 SEGMENT="1">
                    <VBELN>0820046682</VBELN>
                    <POSNR>000060</POSNR>
                    <MATNR>000000000012268357</MATNR>
                    <WERKS>8819</WERKS>
                    <LGORT>0001</LGORT>
                    <CHARG>7125T145NA</CHARG>
                    <LFIMG>2.000</LFIMG>
                    <VRKME>CS</VRKME>
                    <BTGEW>22.800</BTGEW>
                    <NTGEW>20.844</NTGEW>
                    <GEWEI>KGM</GEWEI>
                    <VOLUM>151.160</VOLUM>
                    <VOLEH>DMQ</VOLEH>
                    <ARKTX>NESPRS Pro DspbPapCup 54(55x100ml/4oz)XI</ARKTX>
                    <EANNR>7640145295003</EANNR>
                    <STAWN>48236990</STAWN>
                    <EXART>1</EXART>
                    <HERKL>CN</HERKL>
                    <GRWRT>70.71</GRWRT>
                    <DOKPF>X</DOKPF>
                    <ABRDT>00000000</ABRDT>
                    <_-GLB_-OGT_E1EDP09_01 SEGMENT="1">
                        <ORDQTY>2.000</ORDQTY>
                        <ORDUNIT>CS</ORDUNIT>
                        <QPRODDAT>20170719</QPRODDAT>
                        <VFDAT>20271231</VFDAT>
                        <QTYFIELD1>2.000</QTYFIELD1>
                        <UOMFIELD1>CS</UOMFIELD1>
                        <QTYFIELD2>2.000</QTYFIELD2>
                        <UOMFIELD2>CS</UOMFIELD2>
                    </_-GLB_-OGT_E1EDP09_01>
                    <_-GLB_-RGT_DYN_SEG_05 SEGMENT="1">
                        <QUALIFIER>CSPERLAY</QUALIFIER>
                        <FIELDVAL1>4.000</FIELDVAL1>
                    </_-GLB_-RGT_DYN_SEG_05>
                    <_-GLB_-RGT_DYN_SEG_05 SEGMENT="1">
                        <QUALIFIER>LAYPERPAL</QUALIFIER>
                        <FIELDVAL1>5.000</FIELDVAL1>
                    </_-GLB_-RGT_DYN_SEG_05>
                </E1EDP09>
            </E1EDP07>
            <E1EDP07 SEGMENT="1">
                <BSTNK>LDP5877367</BSTNK>
                <POSEX>000070</POSEX>
                <E1EDP09 SEGMENT="1">
                    <VBELN>0820046682</VBELN>
                    <POSNR>000070</POSNR>
                    <MATNR>000000000012268440</MATNR>
                    <WERKS>8819</WERKS>
                    <LGORT>0001</LGORT>
                    <CHARG>6360T145NA</CHARG>
                    <LFIMG>1.000</LFIMG>
                    <VRKME>CS</VRKME>
                    <BTGEW>2.520</BTGEW>
                    <NTGEW>2.400</NTGEW>
                    <GEWEI>KGM</GEWEI>
                    <VOLUM>34.130</VOLUM>
                    <VOLEH>DMQ</VOLEH>
                    <ARKTX>NESPRS Take AwayCupLid24(50x100ml/4oz)XI</ARKTX>
                    <EANNR>7630030309120</EANNR>
                    <STAWN>39235090</STAWN>
                    <EXART>1</EXART>
                    <HERKL>CN</HERKL>
                    <GRWRT>16.82</GRWRT>
                    <DOKPF>X</DOKPF>
                    <ABRDT>00000000</ABRDT>
                    <_-GLB_-OGT_E1EDP09_01 SEGMENT="1">
                        <ORDQTY>1.000</ORDQTY>
                        <ORDUNIT>CS</ORDUNIT>
                        <QPRODDAT>20170629</QPRODDAT>
                        <VFDAT>20271231</VFDAT>
                        <QTYFIELD1>1.000</QTYFIELD1>
                        <UOMFIELD1>CS</UOMFIELD1>
                        <QTYFIELD2>1.000</QTYFIELD2>
                        <UOMFIELD2>CS</UOMFIELD2>
                    </_-GLB_-OGT_E1EDP09_01>
                    <_-GLB_-RGT_DYN_SEG_05 SEGMENT="1">
                        <QUALIFIER>CSPERLAY</QUALIFIER>
                        <FIELDVAL1>8.000</FIELDVAL1>
                    </_-GLB_-RGT_DYN_SEG_05>
                    <_-GLB_-RGT_DYN_SEG_05 SEGMENT="1">
                        <QUALIFIER>LAYPERPAL</QUALIFIER>
                        <FIELDVAL1>6.000</FIELDVAL1>
                    </_-GLB_-RGT_DYN_SEG_05>
                </E1EDP09>
            </E1EDP07>
            <E1EDP07 SEGMENT="1">
                <BSTNK>LDP5877367</BSTNK>
                <POSEX>000080</POSEX>
                <E1EDP09 SEGMENT="1">
                    <VBELN>0820046682</VBELN>
                    <POSNR>000080</POSNR>
                    <MATNR>000000000012346813</MATNR>
                    <WERKS>8819</WERKS>
                    <LGORT>0001</LGORT>
                    <CHARG>0000226876</CHARG>
                    <LFIMG>192.000</LFIMG>
                    <VRKME>CS</VRKME>
                    <BTGEW>345.600</BTGEW>
                    <NTGEW>341.760</NTGEW>
                    <GEWEI>KGM</GEWEI>
                    <VOLUM>2508.864</VOLUM>
                    <VOLEH>DMQ</VOLEH>
                    <ARKTX>NESPRS Case Corr Carton 100Caps 20Pc XI</ARKTX>
                    <EANNR>7630039622237</EANNR>
                    <STAWN>48191000</STAWN>
                    <EXART>1</EXART>
                    <HERKL>CH</HERKL>
                    <GRWRT>769.01</GRWRT>
                    <ABRDT>00000000</ABRDT>
                    <_-GLB_-OGT_E1EDP09_01 SEGMENT="1">
                        <ORDQTY>192.000</ORDQTY>
                        <ORDUNIT>CS</ORDUNIT>
                        <QPRODDAT>20171012</QPRODDAT>
                        <VFDAT>20181010</VFDAT>
                        <QTYFIELD1>192.000</QTYFIELD1>
                        <UOMFIELD1>CS</UOMFIELD1>
                        <QTYFIELD2>192.000</QTYFIELD2>
                        <UOMFIELD2>CS</UOMFIELD2>
                    </_-GLB_-OGT_E1EDP09_01>
                    <_-GLB_-RGT_DYN_SEG_05 SEGMENT="1">
                        <QUALIFIER>CSPERLAY</QUALIFIER>
                        <FIELDVAL1>6.000</FIELDVAL1>
                    </_-GLB_-RGT_DYN_SEG_05>
                    <_-GLB_-RGT_DYN_SEG_05 SEGMENT="1">
                        <QUALIFIER>LAYPERPAL</QUALIFIER>
                        <FIELDVAL1>16.000</FIELDVAL1>
                    </_-GLB_-RGT_DYN_SEG_05>
                </E1EDP09>
            </E1EDP07>
            <E1EDP07 SEGMENT="1">
                <BSTNK>LDP5877367</BSTNK>
                <POSEX>000090</POSEX>
                <E1EDP09 SEGMENT="1">
                    <VBELN>0820046682</VBELN>
                    <POSNR>000090</POSNR>
                    <MATNR>000000000012346816</MATNR>
                    <WERKS>8819</WERKS>
                    <LGORT>0001</LGORT>
                    <LFIMG>60.000</LFIMG>
                    <VRKME>CS</VRKME>
                    <BTGEW>258.000</BTGEW>
                    <NTGEW>256.800</NTGEW>
                    <GEWEI>KGM</GEWEI>
                    <VOLUM>1946.280</VOLUM>
                    <VOLEH>DMQ</VOLEH>
                    <ARKTX>NESPRS Case Corr Carton 300Caps 20Pc XI</ARKTX>
                    <EANNR>7630039622312</EANNR>
                    <STAWN>48191000</STAWN>
                    <EXART>1</EXART>
                    <HERKL>CH</HERKL>
                    <GRWRT>536.09</GRWRT>
                    <ABRDT>00000000</ABRDT>
                    <_-GLB_-OGT_E1EDP09_01 SEGMENT="1">
                        <ORDQTY>60.000</ORDQTY>
                        <ORDUNIT>CS</ORDUNIT>
                        <QTYFIELD1>60.000</QTYFIELD1>
                        <UOMFIELD1>CS</UOMFIELD1>
                        <QTYFIELD2>60.000</QTYFIELD2>
                        <UOMFIELD2>CS</UOMFIELD2>
                    </_-GLB_-OGT_E1EDP09_01>
                    <_-GLB_-RGT_DYN_SEG_05 SEGMENT="1">
                        <QUALIFIER>CSPERLAY</QUALIFIER>
                        <FIELDVAL1>4.000</FIELDVAL1>
                    </_-GLB_-RGT_DYN_SEG_05>
                    <_-GLB_-RGT_DYN_SEG_05 SEGMENT="1">
                        <QUALIFIER>LAYPERPAL</QUALIFIER>
                        <FIELDVAL1>15.000</FIELDVAL1>
                    </_-GLB_-RGT_DYN_SEG_05>
                </E1EDP09>
            </E1EDP07>
            <E1EDP07 SEGMENT="1">
                <BSTNK>LDP5877367</BSTNK>
                <POSEX>000100</POSEX>
                <E1EDP09 SEGMENT="1">
                    <VBELN>0820046682</VBELN>
                    <POSNR>000100</POSNR>
                    <MATNR>000000000012268003</MATNR>
                    <WERKS>8819</WERKS>
                    <LGORT>0001</LGORT>
                    <CHARG>7206T158M3</CHARG>
                    <LFIMG>7.000</LFIMG>
                    <VRKME>CS</VRKME>
                    <BTGEW>42.000</BTGEW>
                    <NTGEW>30.240</NTGEW>
                    <GEWEI>KGM</GEWEI>
                    <VOLUM>417.970</VOLUM>
                    <VOLEH>DMQ</VOLEH>
                    <ARKTX>NESPRS Recycling Bin (6Pc) XI</ARKTX>
                    <EANNR>7640128875529</EANNR>
                    <STAWN>39249000</STAWN>
                    <EXART>1</EXART>
                    <HERKL>CN</HERKL>
                    <GRWRT>490.76</GRWRT>
                    <DOKPF>X</DOKPF>
                    <ABRDT>00000000</ABRDT>
                    <_-GLB_-OGT_E1EDP09_01 SEGMENT="1">
                        <ORDQTY>7.000</ORDQTY>
                        <ORDUNIT>CS</ORDUNIT>
                        <QPRODDAT>20170721</QPRODDAT>
                        <VFDAT>20270721</VFDAT>
                        <QTYFIELD1>7.000</QTYFIELD1>
                        <UOMFIELD1>CS</UOMFIELD1>
                        <QTYFIELD2>7.000</QTYFIELD2>
                        <UOMFIELD2>CS</UOMFIELD2>
                    </_-GLB_-OGT_E1EDP09_01>
                    <_-GLB_-RGT_DYN_SEG_05 SEGMENT="1">
                        <QUALIFIER>CSPERLAY</QUALIFIER>
                        <FIELDVAL1>4.000</FIELDVAL1>
                    </_-GLB_-RGT_DYN_SEG_05>
                    <_-GLB_-RGT_DYN_SEG_05 SEGMENT="1">
                        <QUALIFIER>LAYPERPAL</QUALIFIER>
                        <FIELDVAL1>5.000</FIELDVAL1>
                    </_-GLB_-RGT_DYN_SEG_05>
                </E1EDP09>
            </E1EDP07>
        </E1EDK08>
        <E1EDS02 SEGMENT="1">
            <SUMID>001</SUMID>
            <SUMME>65</SUMME>
        </E1EDS02>
    </IDOC>
</_-GLB_-OGTX_DESADV01_CUST_ASN>
4

1 回答 1

0

1)您的 xml 无效。在示例中,最后一个标签与第一个标签不匹配。
2)Oracle有专门的数据类型来支持xml数据(xmltype)。xmltype 构造函数之一接受 blob 作为参数。但 blob 数据必须是有效且格式良好的 xml 文档。

select xmltype(blob_column, charset_encoding ) from your_table.

charset_encoding = 1 = USASCII 但你必须找出正确的编码

3) 要从 xml 中提取值,您可以使用 xmltable。

 select distinct mantr from NES.WLI_DB t,
  xmltable('//MATNR' passing xmltype(t.DATA_VALUE,1) 
   columns mantr varchar2(1000) path 'text()')
   where t.id = '0000000331756259';
于 2017-10-31T07:34:14.863 回答