2

xml是这样的:

<persons>
<person>
<name/>
<surname/>
</person>

<person index=1>
<name/>
<surname/>
</person>

<person index=2>
<name/>
<surname/>
</person>
...
</persons>

我需要建立一个显示所有人的所有数据的视图。

name surname
name1 surname1

如何在 select 语句中执行此循环?它需要是一个视图。

4

2 回答 2

1

使用

string-join(/*/person/concat(name, ' ', surname), '&#xA;')

在评估此 XPath 表达式时,针对以下 XML 文档:

<persons>
    <person index="1">
        <name>Alex</name>
        <surname>Brown</surname>
    </person>
    <person index="2">
        <name>Katie</name>
        <surname>Smith</surname>
    </person>
    <person index="3">
        <name>Julius</name>
        <surname>Caesar</surname>
    </person>
</persons>

结果是

 Alex Brown
 Katie Smith
 Julius Caesar
于 2010-11-23T14:20:18.323 回答
0

如果需要转换,您是否考虑过使用 xslt?

如果您需要 xquery,然后选择这些节点,

doc("file.xml")/persons/person/name | /persons/person/name

或者

doc("file.xml")//name |// surname     

即姓名,姓氏出现在任何地方

于 2010-11-23T08:08:39.233 回答