MongoDB通过自定义键查询收集并返回具有限制的嵌套对象



尝试查询嵌套对象的MongoDB集合,有大师愿意分享知识吗?

将用一个简化的例子来解释。

从 "loc" 数组中获取最后两个对象,其中 "uuid" 等于 16。

任何帮助非常感谢。

示例集合:

{  
   "_id":ObjectId("5a4f1ff0fc6ded723265e6b0"),
   "uuid":"15",
   "location_history":{  
      "loc":[  
         {  
            //remove for demo sake
         },
         {  
            //remove for demo sake
         },
         {  
            //remove for demo sake
         }
      ]
   }
},
{  
   "_id":ObjectId("3a4f1ff0fc55ed723265e6b0"),
   "uuid":"16",
   "location_history":{  
      "loc":[  
         {  
            //remove for demo sake
         },
         {  
            //remove for demo sake
         },
         {  
            //remove for demo sake
         }
      ]
   }
}

Yoe 可以使用值为 -2 的 $slice 作为投影,从嵌套数组中获取最后两个文档。

db.collection.find({ "uuid": "16" }, { "location_history.loc": { $slice: -2 } })

最新更新