我目前有这个查询,但它只返回一个布尔值TRUE。
let $expression1 := (0, 11, 22, 34, 36, 57)
let $expression2 := (16, 17, 57, 18)
for $item in ($sequence1 = $sequence2)
return $item
此查询当前返回布尔值TRUE。 我怎样才能返回两个值的序列:第一个表达式的值和第二个表达式的值呢?
非常感谢任何帮助。 谢谢。
答案 0 :(得分:2)
您收到一个布尔结果,因为($sequence1 = $sequence2)
评估为" $sequence1
中的任何值是否等于$sequence2
中的任何值?"。这将计算为for $item in true() return $item
,返回单个布尔值。
如果您只想返回两个序列中的值:
return $sequence1[. = $sequence2]
如果要将两个序列一起返回:
return ($sequence1, $sequence2)
如果要返回两个序列而不重复:
return distinct-values(($sequence1, $sequence2))