Nous emploierons le document de « bookdetails.xml » dans l'exemple ci-dessous (le même dossier de XML que dans les chapitres précédents).
Éléments filtrants de choix et
Comme nous avons vu dans les chapitres précédents, nous les éléments filtrants choisissent et avec une expression de FLWOR ou avec une expression de chemin.
Regarder l'expression de FLWOR qui est donnée ci-dessous :
pour $x dans le Doc. (« bookdetails.xml ») /bookstore/book où ordre $x/price>30 par $x/title $x/title de retour
pour - (facultatif) lie la variable à chaque article retourné par dans l'expression
laissé - celui-ci est facultatif
là où - (facultatif) indiquer les critères
ordre par - (facultatif) indiquer le sorte-ordre du résultat
retour - indiquer quoi retourner dans le résultat
Pour le grippage de clause qu'une variable à chaque article est retourné par l'expression. Pour le résultat de clause dans l'itération. Il peut y avoir multiple pour des clauses dans la même expression de FLWOR.
Pour faire une boucle un nombre de fois spécifique dans a pour la clause, vous pouvez devoir employer au mot-clé :
pour $x dans (1 à 5) <test> de retour {$x} </test>
Au mot-clé peut être employé pour compter le nombre d'itération :
pour $x à $i dans le Doc. (« bookdetails.xml ») /bookstore/book/title <book> de retour {$i}. {données ($x)}</book>
Résultat :
<book>1. Italian</book> journalier <book>2. Harry Potter</book>
<book>3. Coup-de-pied Start</book> de XQuery <book>4. XML</book> de étude
Vous pouvez employer plus d'un dans l'expression dans pour la clause. Employer la virgule pour séparer le chacun dans l'expression :
pour $x dedans (10.20), $y dans (100.200) <test>x= de retour {$x} et y= {$y} </test>
Résultat :
<test>x=10 et y=100</test> <test>x=10 et y=200</test> <test>x=20 et y=100</test> <test>x=20 et y=200</test>
Laisser la clause
Laisser la clause permet des tâches variables et elle évite toujours de répéter la même expression beaucoup de fois. Laisser la clause n'a pas comme conséquence une itération.
laisser $x : = (1 à 5) <test> de retour {$x} </test>
Résultat :
<test>1 2 3 4 5</test>
Où clause
Où la clause est employée pour indiquer un ou plusieurs critères pour le résultat particulier :
là où $x/price>30 et $x/price<100
L'ordre par Clause
L'ordre par clause est employé pour indiquer l'ordre de sorte des résultats. Ici nous voulons commander le résultat par la catégorie et l'intituler :
pour $x dans le Doc. (« bookdetails.xml ») /bookstore/book ordre par $x/@category, $x/title $x/title de retour
Résultat :
lang= " en " Potter</title> >Harry de <title lang= " en " Italian</title> >Everyday de <title lang= " en " XML</title> >Learning de <title coup-de-pied Start</title> de >XQuery du lang= " en " de <title
La clause de retour
La clause de retour indiquent ce qui doit être retourné.
pour $x dans le Doc. (« bookdetails.xml ») /bookstore/book $x/title de retour
Résultat :
lang= " en " Italian</title> >Everyday de <title lang= " en " Potter</title> >Harry de <title coup-de-pied Start</title> de >XQuery du lang= " en " de <title lang= " en " XML</title> >Learning de <title