XQuery FLWOR 表達式
XML 實例文檔
我們將在下面的例子中使用這個 "books.xml" 文檔(與上一節(jié)中的 XML 文件相同)。
在您的瀏覽器中查看 "books.xml" 文件。
如果使用 FLWOR 從 "books.xml" 選取節(jié)點
請看下面這個路徑表達式:
doc("books.xml")/bookstore/book[price>30]/title
上面這個表達式可選取 bookstore 元素下的 book 元素下所有的 title 元素,并且其中的 price 元素的值必須大于 30。
下面這個 FLWOR 表達式所選取的數(shù)據(jù)和上面的路徑表達式是相同的:
for $x in doc("books.xml")/bookstore/book where $x/price>30 return $x/title
結(jié)果是:
<title lang="en">XQuery Kick Start</title> <title lang="en">Learning XML</title>
通過 FLWOR,您可以對結(jié)果進行排序:
for $x in doc("books.xml")/bookstore/book where $x/price>30 order by $x/title return $x/title
FLWOR 是 "For, Let, Where, Order by, Return" 的只取首字母縮寫。
for語句把 bookstore 元素下的所有 book 元素提取到名為 $x 的變量中。
where語句選取了 price 元素值大于 30 的 book 元素。
order by語句定義了排序次序。將根據(jù) title 元素進行排序。
return語句規(guī)定返回什么內(nèi)容。在此返回的是 title 元素。
上面的 XQuery 表達式的結(jié)果:
<title lang="en">Learning XML</title> <title lang="en">XQuery Kick Start</title>