Xquery总结部分DayTime持续时间

时间:2010-11-12 12:24:57

标签: xquery

使用sum总结持续时间时遇到问题。

这是一个例子:

<total>
for $t in //Times
let $start_t := $t/@start
let $stop_t := $t/@stop
let $duration := xs:dateTime($stop_t) - xs:dateTime($start_t)
return
..... 
</total>

给出了部分持续时间的列表。如何使用总和来总结它们?

感谢

2 个答案:

答案 0 :(得分:3)

您可以使用此XQuery / XPath表达式:

sum(//Times/(xs:dateTime(@stop) - xs:dateTime(@start)))

答案 1 :(得分:0)

您可以将整个查询包装在对sum()的调用中:

<total>
{
  sum(
    for $t in //Times
    let $start_t := $t/@start
    let $stop_t := $t/@stop
    return xs:dateTime($stop_t) - xs:dateTime($start_t)
  )
}
</total>