繁体   English   中英

Oracle XMLTable函数和XPATH

[英]Oracle XMLTable functions and XPATH

我在XML类型表中存储了以下xml文档

<?xml version="1.0" encoding="utf-8"?>
<Document xmlns="urn:iso:std:iso:200:tech:xsd:101" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
    <FIToFICstmrCdtTrf xmlns="urn:iso:std:iso:200:tech:xsd:101">
                            <CreditTx>
                <PaymentID>
                    <InstrumentId>AAB000001</InstrumentId>
                    <Id>4730 2013-10-23 AAB000001</Id>
                    <TranxId>BULKTTXTDAAB000001</TranxId>
                </PaymentID>
            </CreditTx>
        </FIToFICstmrCdtTrf>
</Document>

当我执行以下SQL

SELECT payments.instrumentid,
payments.id,
payments.tranxid
FROM paymentxml,
XMLTable('for $i in /Document/FIToFICstmrCdtTrf/CreditTx/PaymentID
return $i'
PASSING OBJECT_VALUE
COLUMNS
instrumentid VARCHAR2(20) PATH 'InstrumentId' ,
id VARCHAR2(20) PATH 'Id' ,
tranxid VARCHAR2(20) PATH 'TranxId'
)payments

即使xpath正确,我也没有得到任何结果。

为了

/ Document / FIToFICstmrCdtTrf / CreditTx / PaymentID中的$ i返回$ i

您必须将文档作为

对于doc(“ / your / path / your.xml”)/ Document / FIToFICstmrCdtTrf / CreditTx / PaymentID中的$ i返回$ i

重要的是要知道资源的位置是/your/path/your.xml

我希望这可以帮助你。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM