我在查询控制台中运行以下代码:
let $age := xs:integer(fn:days-from-duration(fn:current-date() - xs:date(/wl:leader/wl:dob/text())) div 365.25)
return $age
以下.xqy文件中:
for $leader in /wl:leader
let $age := xs:integer(fn:days-from-duration(fn:current-date() - xs:date($leader/wl:dob/text())) div 365.25)
return $age
现在,两者都相似,但是当在查询控制台上运行时,我收到错误:arg1不是类型xs:duration? 我理解错误是由'fn:current-date()'中的持续时间部分引起的,但为什么我不会遇到与.xqy文件相同的问题?
答案 0 :(得分:1)
正如亨特先生所指出的,代码中的差异解释了错误。
第二个例子一次将一个领导者传递给表达式。
第一个例子将所有领导者传递给期望单一领导者的表达。
希望有帮助,