ESQL SELECT函数返回值使用属性值作为条件进行过滤

时间:2013-11-27 16:38:01

标签: xml mq ibm-integration-bus extended-sql

我试图根据父

的属性值返回示例消息中元素的值

XML消息的结构是:

<transaction>
    <operation>
        <column name="A">
            <item>Desired Value</item>
        </column>
        <column name="B">
            <item>Other Value</item>
        </column>
    </operation>
</transaction>

在XPath中,这将使用以下查询完成:

/transaction/operation/column[@name='A']/item/test()

但是在ESQL中,我无法让它发挥作用。我认为它应该类似于:

SELECT
    C.column.item
FROM
    InputRoot.transaction.operation as C
WHERE
    C.column.(XML.Attribute)name = A

1 个答案:

答案 0 :(得分:2)

试试这个:

SELECT
    C.item
FROM
    InputRoot.XMLNSC.transaction.operation.column[] AS C
WHERE
    C.name = 'A'