最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

XQuery 選擇和過(guò)濾

XML實(shí)例文檔

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

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

選擇和過(guò)濾元素

正如在前面的章節(jié)所看到的,我們使用路徑表達(dá)式或 FLWOR 表達(dá)式來(lái)選取和過(guò)濾元素。

請(qǐng)看下面的 FLWOR 表達(dá)式:

for $x in doc("books.xml")/bookstore/book
where $x/price>30
order by $x/title
return $x/title
for
(可選) 向每個(gè)由 in 表達(dá)式返回的項(xiàng)目捆綁一個(gè)變量
let
(可選)
where
(可選) 設(shè)定一個(gè)條件
order by
(可選) 設(shè)定結(jié)果的排列順序
return
規(guī)定在結(jié)果中返回的內(nèi)容

for 語(yǔ)句

for 語(yǔ)句可將變量捆綁到由 in 表達(dá)式返回的每個(gè)項(xiàng)目。for 語(yǔ)句可產(chǎn)生迭代。在同一個(gè) FLWOR 表達(dá)式中可存在多重 for 語(yǔ)句。

如需在一個(gè) for 語(yǔ)句中進(jìn)行指定次數(shù)地循環(huán),您可使用關(guān)鍵詞 to

for $x in (1 to 5)
return <test>{$x}</test>

結(jié)果:

<test>1</test>
<test>2</test>
<test>3</test>
<test>4</test>
<test>5</test>

關(guān)鍵詞 at 可用于計(jì)算迭代:

for $x at $i in doc("books.xml")/bookstore/book/title
return <book>{$i}. {data($x)}</book>

結(jié)果:

<book>1. Everyday Italian</book>
<book>2. Harry Potter</book>
<book>3. XQuery Kick Start</book>
<book>4. Learning XML</book>

在 for 語(yǔ)句中同樣允許多個(gè) in 表達(dá)式。請(qǐng)使用逗號(hào)來(lái)分割每一個(gè) in 表達(dá)式:

for $x in (10,20), $y in (100,200)
return <test>x={$x} and y={$y}</test>

結(jié)果:

<test>x=10 and y=100</test>
<test>x=10 and y=200</test>
<test>x=20 and y=100</test>
<test>x=20 and y=200</test>

let 語(yǔ)句

let 語(yǔ)句可完成變量分配,并可避免多次重復(fù)相同的表達(dá)式。let 語(yǔ)句不會(huì)導(dǎo)致迭代。

let $x := (1 to 5)
return <test>{$x}</test>

結(jié)果:

<test>1 2 3 4 5</test>

where 語(yǔ)句

where 語(yǔ)句用于為結(jié)果設(shè)定一個(gè)或多個(gè)條件(criteria)。

where $x/price>30 and $x/price<100

order by 語(yǔ)句

order by 語(yǔ)句用于規(guī)定結(jié)果的排序次序。在這里,我們要根據(jù) category 和 title 來(lái)對(duì)結(jié)果進(jìn)行排序:

for $x in doc("books.xml")/bookstore/book
order by $x/@category, $x/title
return $x/title

結(jié)果:

<title lang="en">Harry Potter</title>
<title lang="en">Everyday Italian</title>
<title lang="en">Learning XML</title>
<title lang="en">XQuery Kick Start</title>

return 語(yǔ)句:

return 語(yǔ)句規(guī)定要返回的內(nèi)容。

for $x in doc("books.xml")/bookstore/book
return $x/title

結(jié)果:

<title lang="en">Everyday Italian</title>
<title lang="en">Harry Potter</title>
<title lang="en">XQuery Kick Start</title>
<title lang="en">Learning XML</title>
嘉鱼县| 静宁县| 若尔盖县| 秭归县| 苗栗县| 紫阳县| 慈利县| 贵溪市| 邯郸市| 会泽县| 勃利县| 丰宁| 江华| 延津县| 临漳县| 灌南县| 双牌县| 绥化市| 常宁市| 临桂县| 沙湾县| 台东县| 泰州市| 河南省| 顺昌县| 儋州市| 建昌县| 乐平市| 沈阳市| 千阳县| 福贡县| 陆川县| 湖南省| 孙吴县| 皋兰县| 武山县| 唐河县| 虞城县| 瓦房店市| 府谷县| 珲春市|