Xml XQuery-连接还是字符串连接?
下面是XML结构Xml XQuery-连接还是字符串连接?,xml,xquery,basex,Xml,Xquery,Basex,下面是XML结构 <Docs> <Doc> <Title>Physics</Title> <Desc> <Part n="Part 1"> <Chap c="1"/> <Chap c="2"/> <Chap c="4"/> </Part> </Desc> </Doc> <Doc&
<Docs>
<Doc>
<Title>Physics</Title>
<Desc>
<Part n="Part 1">
<Chap c="1"/>
<Chap c="2"/>
<Chap c="4"/>
</Part>
</Desc>
</Doc>
<Doc>
<Title>Physics</Title>
<Desc>
<Part n="Part 2">
<Chap c="2"/>
<Chap c="3"/>
<Chap c="4"/>
</Part>
</Desc>
</Doc>
</Docs>
物理
物理
我所追求的输出如下-
<Title>Physics,#,Part 1 - 1,2,4</Title>
<Title>Physics,#,Part 2 - 2,3,4</Title>
物理学,#,第1-1,2,4部分
物理学,#,第2-2,3,4部分
我用
concat
和string join
尝试了各种组合,但都没有成功:(晚上晚些时候,我又玩了一次,得到了答案,虽然不是我所需要的答案,但可以满足我的需要-
let $a :=
<Docs>
<Doc>
<Title>Physics</Title>
<Desc>
<Part n="Part 1">
<Chap c="1"/>
<Chap c="2"/>
<Chap c="4"/>
</Part>
</Desc>
</Doc>
<Doc>
<Title>Physics</Title>
<Desc>
<Part n="Part 2">
<Chap c="2"/>
<Chap c="3"/>
<Chap c="4"/>
</Part>
</Desc>
</Doc>
</Docs>
for $x in $a//Doc
return
<Title>{
concat($x/Title,"#",
string-join(
($x/Desc/Part/@n, " - ", string-join(($x/Desc/Part/Chap/@c, ""),",")),""))
}</Title>
让$a:=
物理
物理
$a//Doc中的$x
返回
{
concat($x/标题“#”),
串接(
($x/Desc/Part/@n,“-”,字符串联接($x/Desc/Part/Chap/@c,”,“,”))
}
您的XML文档不正确。请先修复它好吗?“我尝试了各种组合”-请说明您尝试了什么,以便我们可以帮助您解决具体问题。