XQuery FLWOR 表達(dá)式

2018-02-24 10:57 更新

XQuery FLWOR 表達(dá)式

FLWOR 表達(dá)式是 XQuery 最重要的表達(dá)式之一,本節(jié)帶你了解 FLWOR 表達(dá)式的使用。


XML 實(shí)例文檔

我們將在下面的例子中繼續(xù)使用這個(gè) "books.xml" 文檔(與上一節(jié)中的 XML 文件相同)。

在您的瀏覽器中查看 "books.xml" 文件。


如果使用 FLWOR 從 "books.xml" 選取節(jié)點(diǎn)

請(qǐng)看下面這個(gè)路徑表達(dá)式:

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

上面這個(gè)表達(dá)式可選取 bookstore 元素下的 book 元素下所有的 title 元素,并且其中的 price 元素的值必須大于 30。

下面這個(gè) FLWOR 表達(dá)式所選取的數(shù)據(jù)和上面的路徑表達(dá)式是相同的:

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>

通過(guò) FLWOR,您可以對(duì)結(jié)果進(jìn)行排序:

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" 的只取首字母縮寫(xiě)。

for 語(yǔ)句把 bookstore 元素下的所有 book 元素提取到名為 $x 的變量中。

where 語(yǔ)句選取了 price 元素值大于 30 的 book 元素。

order by 語(yǔ)句定義了排序次序。將根據(jù) title 元素進(jìn)行排序。

return 語(yǔ)句規(guī)定返回什么內(nèi)容。在此返回的是 title 元素。

上面的 XQuery 表達(dá)式的結(jié)果:

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

接下來(lái),在下一節(jié)中,你將了解在 XQuery 中,F(xiàn)LWOR與HTML是如何一起使用的。

以上內(nèi)容是否對(duì)您有幫助:
在線筆記
App下載
App下載

掃描二維碼

下載編程獅App

公眾號(hào)
微信公眾號(hào)

編程獅公眾號(hào)