1


次の文をもっと簡単にできるかどうか自問します。あなたは私を助けることができます?

<Vorlesungsverzeichnis>
{
for $sws in distinct-values(doc('uni')//Vorlesung/SWS) 
order by $sws
return 
 <Vorlesungen SWS="{$sws}">
 {
   for $v in doc('uni')//Vorlesung[SWS=$sws]
   order by $v/Titel
   return <Vorlesung VorlNr="{$v/@VorlNr}" Titel="{$v/Titel}"></Vorlesung>
 }
 </Vorlesungen>
}
</Vorlesungsverzeichnis>

ソース XML はこちらから入手できます。ここでクエリを試すこともできます。

助けてくれてありがとう!

4

1 に答える 1

1

XQuery 3.0 では、次のことができます。

<Vorlesungsverzeichnis>
{
  for $v in doc('uni')//Vorlesung
  order by $v/Titel
  group by $sws := $v/SWS
  return <Vorlesungen SWS="{$sws}">{$v}</Vorlesungen>
}
</Vorlesungsverzeichnis>
于 2013-09-03T16:03:28.133 に答える