查询控制台与 .xqy 文件
Query console vs .xqy file
我在查询控制台中运行以下代码:
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 文件相同的问题?
正如 Hunter 先生所指出的,代码中的差异解释了错误。
第二个示例在表达式中一次传递一个领导者。
第一个示例将所有领导者传递到期望单个领导者的表达式中。
希望对您有所帮助,
我在查询控制台中运行以下代码:
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 文件相同的问题?
正如 Hunter 先生所指出的,代码中的差异解释了错误。
第二个示例在表达式中一次传递一个领导者。
第一个示例将所有领导者传递到期望单个领导者的表达式中。
希望对您有所帮助,