【发布时间】:2015-03-25 09:38:08
【问题描述】:
这是一个很简单的问题,我搜索了所有,但没有找到答案
我只有
{
"_id" : 1,
"name" : {
"first" : "John",
"last" : "Backus"
},
"awards" : [
{
"award" : "W.W. McDowell Award",
**"year" : 1967,**
"by" : "IEEE Computer Society"
},
{
"award" : "Draper Prize",
**"year" : 1967,**
"by" : "National Academy of Engineering"
},
{
"award" : "National Medal of Science",
"year" : 1975,
"by" : "National Science Foundation"
}
]
},
{
"_id" : 2,
"name" : {
"first" : "John",
"last" : "McCarthy"
},
"awards" : [
{
"award" : "Turing Award",
"year" : 1971,
"by" : "ACM"
},
{
"award" : "Kyoto Prize",
**"year" : 1967,**
"by" : "Inamori Foundation"
},
{
"award" : "National Medal of Science",
"year" : 1990,
"by" : "National Science Foundation"
}
]
},
我只需要 1967 年获得的所有奖项!
我试过db.bios.find({"awards.year":1967},{award.$}).pretty()
我只得到
"_id" : 1,
"awards" : [
{
"award" : "W.W. McDowell Award",
"year" : 1967,
"by" : "IEEE Computer Society"
},
],
但我需要在所有文件中找到(第一个文件有两个,所以总共有 3 个
{
"_id" : 1,
"awards" : [
{
"award" : "W.W. McDowell Award",
"year" : 1967,
"by" : "IEEE Computer Society"
},
{
"award" : "Draper Prize",
**"year" : 1967,**
"by" : "National Academy of Engineering"
}
]
},
{
"_id" : 2,
"award":[{
"award" : "Kyoto Prize",
"year" : 1967,
"by" : "Inamori Foundation"
}
]
}
我尝试使用$all,但无法获得结果。我希望我清楚
是的,我使用的是 bios 示例。
这一定很简单,我有点短
请帮忙。
【问题讨论】:
-
我认为您应该查看此stackoverflow.com/questions/21623979/… 或查找有关 mongo 聚合的更多信息。
-
我读过docs.mongodb.org/manual/tutorial/query-documents/…,但这个例子在数组中没有多个值
标签: mongodb mongodb-query mongodb-.net-driver