XQuery FLWOR expressie

XML voorbeelddocument

We zullen in de volgende voorbeelden verder gaan met dit 'books.xml'-document (hetzelfde als in het vorige hoofdstuk).

Bekijk het bestand 'books.xml' in uw browser.

Als u nodes van 'books.xml' met FLWOR selecteert

Bekijk hieronder deze padexpressie:

doc("books.xml")/bookstore/book[price>30]/title

De bovenstaande expressie selecteert alle title-elementen onder de book-elementen van het element bookstore, en de waarde van het element price moet groter zijn dan 30.

De volgende FLWOR-expressie selecteert dezelfde gegevens als de bovenstaande padexpressie:

for $x in doc("books.xml")/bookstore/book
where $x/price>30
return $x/title

Het resultaat is:

<title lang="en">XQuery Kick Start</title>
<title lang="en">Learning XML</title>

Met FLWOR kunt u de resultaten sorteren:

for $x in doc("books.xml")/bookstore/book
where $x/price>30
order by $x/title
return $x/title

FLWOR is de afkorting van 'For, Let, Where, Order by, Return'.

for De statement haalt alle book-elementen onder het element bookstore op en plaatst deze in de variabele $x.

where De statement selecteert de elementen book met een waarde van het element price groter dan 30.

order by De statement definieert de volgorde. De sortering wordt uitgevoerd op basis van het element title.

return De statement bepaalt wat wordt geretourneerd. In dit geval wordt de title element geretourneerd.

Het resultaat van de bovenstaande XQuery expressie:

<title lang="en">Learning XML</title>
<title lang="en">XQuery Kick Start</title>