如果我发出以下查询,则它不返回任何内容:
let $b := doc("books.xml")//book
let $avg := avg( $b//price )
return $avg
但是以下查询返回满足条件的book节点,
let $b := doc("books.xml")//book
let $avg := avg( $b//price )
return $b[price > $avg]
怎么样?如何在前一种情况下按预期返回函数值。
我也试过return $avg/text()
,希望能让它发挥作用,但没有用。
我正在使用撒克逊人。
提前致谢!
答案 0 :(得分:0)
你可以不用让我这样做:avg(doc("books.xml")//book/price)
。对于您可能引用的books.xml示例文件,返回17.86666666666667。
您也可以使用let
- 结构,但您要使用的功能称为avg
,而不是average
:
let $b := doc("books.xml")//book
let $avg := avg( $b//price )
return $avg