带有断行符或符号“XML”的XML中的Xpath

时间:2014-06-09 09:24:20

标签: xml xpath

在我的xml中:

<test>
   <a id="bk1"/>
   <b id="bk2"/>
</test>

使用以下xpath:

/child::test/child::a/@id

结果返回

bk1bk2

预期产出

bk1
bk2

bk1,bk2

是不可能这样做的?

1 个答案:

答案 0 :(得分:1)

试试这个:
string-join(/child::test/child::a/@id, ',')

请注意,您可能拼错了src XML,因为它无效(未关闭的标记),并且您只有一个标记<a>

编辑:
基于您之前的评论,我假设您需要Oracle(PL /)SQL的解决方案。这可能是一种方法:

select t.*
    from xmltable('for $t in $d/test return <t>{fn:string-join($t/a/@id, ",")}</t>'
              passing xmltype('<test><a id="bk1"/><a id="bk2"/></test>') as "d"
              columns "ids" varchar2(256) path '/t'
          ) t