gpt4 book ai didi

mongodb - mongodb 中的子查询

转载 作者:可可西里 更新时间:2023-11-01 10:49:03 33 4
gpt4 key购买 nike

我有两个名为 PERSON 和 DOCUMENTS 的 mongodb 表。我想从 PERSON 表中获取 personName,其 ID 在 DOCUMENT 表中。在关系表中查询是这样的。

SELECT personName from PERSON where personID in (SELECT personID from ID)

我尝试使用聚合和 $lookup 函数,但没有得到我想要的答案。我使用的 mongo 查询是,

db.PERSON.aggregate([

{
"$lookup": {
"from": "DOCUMENTS",
"localField": "personID",
"foreignField": "personID",
"as": "grp"
}
}

])

这个 mongo 查询连接两个表并返回每个字段。但我只想要 personName。

任何帮助将不胜感激。

最佳答案

我找到了一个办法,

db.PERSON.aggregate([

{
"$lookup": {
"from": "DOCUMENTS",
"localField": "personID",
"foreignField": "personID",
"as": "grp"
}
},
{"$unwind" : "$grp"},
{"$project" : {
"personName" : 1
}

])

关于mongodb - mongodb 中的子查询,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/45293269/

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