XQuery:显示最大值以及其他信息

时间:2014-02-19 16:20:52

标签: xquery

假设我有一个XML文件,其中包含具有以下结构的产品元素:

<product>
  <name></name>
  <price></price>
</product>

我需要查询才能获得最昂贵的产品。以下XQuery工作正常:

max(
   for $product in collection('/Products')//product
      return ($product/prize)
)  

但我想得到最贵产品的名称。 我无法通过使用max()函数的简单flwor查询来弄清楚如何实现这一点。

1 个答案:

答案 0 :(得分:1)

计算最大值预检,并使用谓词返回与之匹配的产品:

let $products := collection('/Products')//product
let $max := max($products/prize)
return $products[prize = $max]