XQuery FLWOR uitdrukkings
Wat is FLWOR?
FLWOR (uitgespreek "blom") is 'n akroniem vir "Vir, laat, waar, bestel deur, keer terug".
- Vir - kies 'n reeks nodusse
- Laat - bind 'n ry aan 'n veranderlike
- Waar - filtreer die nodusse
- Orden volgens - sorteer die nodusse
- Terugkeer - wat om terug te gee (word een keer vir elke nodus geëvalueer)
Die XML-voorbeelddokument
Ons sal die "books.xml"-dokument in die voorbeelde hieronder gebruik (dieselfde XML-lêer as in die vorige hoofstuk).
Kyk na die "books.xml"-lêer in jou blaaier .
Hoe om nodusse te kies uit "books.xml" met FLWOR
Kyk na die volgende pad uitdrukking:
doc("books.xml")/bookstore/book[price>30]/title
Die uitdrukking hierbo sal al die titelelemente kies onder die boekelemente wat onder die boekwinkelelement is wat 'n pryselement het met 'n waarde wat hoër as 30 is.
Die volgende FLWOR-uitdrukking sal presies dieselfde as die pad-uitdrukking hierbo kies:
for $x in doc("books.xml")/bookstore/book
where $x/price>30
return $x/title
Die resultaat sal wees:
<title lang="en">XQuery Kick Start</title>
<title lang="en">Learning XML</title>
Met FLWOR kan jy die resultaat sorteer:
for $x in doc("books.xml")/bookstore/book
where $x/price>30
order by $x/title
return $x/title
Die for -klousule kies alle boekelemente onder die boekwinkelelement in 'n veranderlike genaamd $x.
Die where -klousule kies slegs boekelemente met 'n pryselement met 'n waarde groter as 30.
Die volgorde volgens klousule definieer die sorteervolgorde. Sal volgens die titelelement gesorteer word.
Die terugkeerklousule spesifiseer wat teruggestuur moet word. Hier gee dit die titelelemente terug.
Die resultaat van die XQuery-uitdrukking hierbo sal wees:
<title lang="en">Learning XML</title>
<title lang="en">XQuery Kick Start</title>