如何使用“!”在 XQuery 中用于复杂的 "for" 语句?
How to use the "!" in for complex "for" statements in XQuery?
我知道如何使用新的“!”在像这样的简单 for 循环中:
$t2/Course ! map {./SubjectId : .}
但是你如何使用这个新的“!”对于包含 "lets" 和 "groups" 的语句更复杂,如下所示:
for $e2 in $t2/Course
let $foreignId := $e2/SubjectId
group by $foreignId
return map {$foreignId : $e2}
谢谢!
你的第一个例子是错误的。 bang 运算符是一个简单的中缀运算符,所以
for $t2/Course ! map {./SubjectId : .}
应该是
$t2/Course ! map {./SubjectId : .}
(当然“./”是多余的,但有些人还是喜欢用它。)
"How do you use this new "!" 在更复杂的 for 语句中"。也许你不知道。你想达到什么目的? bang 运算符可以替换简单的 "for" 表达式,它有时可以替换“/”,但它并不是设计来替换所有内容的。
我知道如何使用新的“!”在像这样的简单 for 循环中:
$t2/Course ! map {./SubjectId : .}
但是你如何使用这个新的“!”对于包含 "lets" 和 "groups" 的语句更复杂,如下所示:
for $e2 in $t2/Course
let $foreignId := $e2/SubjectId
group by $foreignId
return map {$foreignId : $e2}
谢谢!
你的第一个例子是错误的。 bang 运算符是一个简单的中缀运算符,所以
for $t2/Course ! map {./SubjectId : .}
应该是
$t2/Course ! map {./SubjectId : .}
(当然“./”是多余的,但有些人还是喜欢用它。)
"How do you use this new "!" 在更复杂的 for 语句中"。也许你不知道。你想达到什么目的? bang 运算符可以替换简单的 "for" 表达式,它有时可以替换“/”,但它并不是设计来替换所有内容的。