gpt4 book ai didi

xml - 使用 xquery FLWOR 表达式查找多个 "where"限制

转载 作者:数据小太阳 更新时间:2023-10-29 01:54:35 24 4
gpt4 key购买 nike

我正在尝试寻找在休斯顿从事项目工作的员工,但该项目所在的部门不在休斯顿。我试图在 this 之后对表达式进行建模FLWOR 表达式的示例,但查询不返回任何内容,它应该返回结果。

编辑:这里是 input .

xquery
let $doc := doc("~path/company.xml")
for $e in $doc//employee,
$d in $doc//department,
$p in $doc//projects
where $d/locations[location!="Houston"]
and $p/project[plocations="Houston"]
return <e>{$e/fname}{$e/lname}{$e/address}</e>
/

最佳答案

一个for子句就足够了;否则,您将多次遍历所有员工:

let   $doc := doc(...)
for $e in $doc//employee
let $p := $doc//project[@pnumber = $e/projects/worksOn/@pno]
where $p[plocation = 'Houston']
and $doc//department[@dno = $p/@controllingDepartment]
[not(locations/location = 'Houston')]
return <e>{ $e/fname }{ $e/lname }{ $e/address }</e>

关于xml - 使用 xquery FLWOR 表达式查找多个 "where"限制,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/8468003/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com