XQuery syntaksi

XQuery on kirjainkohtainen, XQuery -elementit, -ominaisuudet ja -muuttujat täytyy olla lailliset XML-nimet.

XQuery -perus语法规则:

Joitakin perus语法规则:

  • XQuery on kirjainkohtainen
  • XQuery -elementit, -ominaisuudet ja -muuttujat täytyy olla lailliset XML-nimet.
  • XQuery -merkkijonot voivat käyttää yksittäisiä tai kahdenpisteisiä apuvälineitä.
  • XQuery -muuttujat määritellään dollarilla ($) ja nimen perässä, esimerkiksi, $bookstore
  • XQuery -kommentit erotetaan (: ja :), esimerkiksi, (: XQuery -kommentti :)

XQuery -ehtilauseet

"If-Then-Else" voidaan käyttää XQuery:ssä.

Katso seuraava esimerkki:

for $x in doc("books.xml")/bookstore/book
return	if ($x/@category="CHILDREN")
	then <child>{data($x/title)}</child>
	else <adult>{data($x/title)}</adult>

Huomaa "If-Then-Else" -syntaksin oikea käyttö: if-lauseen jälkeen olevat kulmaispuol托 ovat välttämättömiä. else on myös välttämätön, mutta myös "else ()" on hyväksytty.

Yllä olevien esimerkkien tuloksena:

<adult>Everyday Italian</adult>
<child>Harry Potter</child>
<adult>Learning XML</adult>
<adult>XQuery Kick Start</adult>

XQuery vertailu

XQuery:ssa on kaksi tapaa verrata arvoja.

  1. Yleinen vertailu: =, !=, <, <=, >, >=
  2. Arvojen vertailu: eq, ne, lt, le, gt, ge

Näiden kaksi vertailumetodia eroavat seuraavasti:

Katso seuraava XQuery-lauseke:

$bookstore//book/@q > 10

Jos q-ominaisuuden arvo on suurempi kuin 10, edellä olevan lausekkeen palautusarvo on true.

$bookstore//book/@q gt 10

Jos palautetaan vain yksi q ja sen arvo on suurempi kuin 10, lauseke palauttaa true. Jos palautetaan useita q:itä, tapahtuu virhe.