• <button id="eiyoe"><acronym id="eiyoe"></acronym></button>
    <em id="eiyoe"></em>

  • <rp id="eiyoe"><acronym id="eiyoe"><input id="eiyoe"></input></acronym></rp>
      查看: 2652|回復: 0
      上一主題 下一主題

      XQuery FLWOR 表達式

      1298

      主題

      0

      好友

      39

      積分

      管理員 離線 發信

      跳轉到指定樓層
      樓主
      發表于 2014-02-19 16:54 | 只看該作者 | 倒序瀏覽

      XQuery FLWOR 表達式

      XML 實例文檔

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

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

      如果使用 FLWOR 從 "books.xml" 選取節點

      請看下面這個路徑表達式:

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

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

      下面這個 FLWOR 表達式所選取的數據和上面的路徑表達式是相同的:

      for $x in doc("books.xml")/bookstore/bookwhere $x/price>30return $x/title

      結果是:

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

      通過 FLWOR,您可以對結果進行排序:

      for $x in doc("books.xml")/bookstore/bookwhere $x/price>30order by $x/titlereturn $x/title

      FLWOR 是 "For, Let, Where, Order by, Return" 的只取首字母縮寫。

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

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

      order by 語句定義了排序次序。將根據 title 元素進行排序。

      return 語句規定返回什么內容。在此返回的是 title 元素。

      上面的 XQuery 表達式的結果:

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

      來源:http://www.w3school.com.cn/xquery/xquery_flwor.asp