【发布时间】:2018-10-03 12:43:01
【问题描述】:
我是 MongoDB 新手,在找到另一个数组元素时需要帮助投影一个数组元素。
以下是我的文档示例-
{
"_id": ObjectId("5bab53afcfbc7829bc6356a0"),
"category": [
{
"categoryRating": 3,
"categoryName": "Crime",
"categoryNameNew": "Crime"
},
{
"categoryRating": 4,
"categoryName": "Security Services",
"categoryNameNew": "Other"
},
{
"categoryRating": 4,
"categoryName": "Civil Unrest",
"categoryNameNew": "Societal"
},
{
"categoryRating": 4,
"categoryName": "Terrorism",
"categoryNameNew": "Terrorism"
},
{
"categoryRating": 3,
"categoryName": "Kidnapping",
"categoryNameNew": "Terrorism"
},
{
"categoryRating": 4,
"categoryName": "Geopolitical",
"categoryNameNew": "Geopolitical"
}
],
"country": "Setif",
"apiSource": "iJET",
"overallScore": 4,
"newDate": "2017-12-28T19:52:58Z"
}
当我指定categoryName 是“犯罪”时,我想要categoryRating 值。因此,在这种情况下,我需要将categoryrating 打印为 3。
到目前为止,我已经尝试了以下查询-
db.RiskScore.find({"country":"Setif","category.categoryName":"Crime"},{"category.categoryRating":1})
以下是我的查询结果-
{
"_id": ObjectId("5bab53afcfbc7829bc6356a0"),
"category": [
{ "categoryRating": 3 },
{ "categoryRating": 4 },
{ "categoryRating": 4 },
{ "categoryRating": 4 },
{ "categoryRating": 3 },
{ "categoryRating": 4 }
]
}
它返回所有 categoryRatings,而不仅仅是 categoryName 为 Crime 的那个。请,对此的任何帮助将不胜感激。
【问题讨论】:
标签: mongodb mongodb-query projection