MongoDB中的数据是这样的:
第一条记录:
{
"_id" : ObjectId("5b309244e138235684843b5d"),
"branch_id": 3,
"group": 2,
"rule_id": 60001,
"details": {
"detail_list": [
{
"count": 36072
},
{
"count": 12035
}
]
}
}
第二条记录:
{
"_id" : ObjectId("5b309244e134567684843b5d"),
"branch_id": 9,
"group": 9,
"rule_id": 60001,
"details": {
"detail_list": [
{
"count": 0
}
]
}
}
我需要获取count > 0
的记录,也就是说我要获取第一条记录,过滤掉第二条记录。我该如何实现?
我试过 db.events.find({'details':{'detail_list':{'$in':[{'count':{ '$gt': 0 }}]}}} )
,但它不起作用。我怎样才能让它发挥作用?
最佳答案
基本Dot notation语法:
db.events.find({"details.detail_list.count": {"$gt": 0}})
关于mongodb - 如何在 MongoDB 中使用深度查询获取 `find()` 数据?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/51019933/