我必须从一个查询中返回2个文档。我将在查询中提供的第一个值,第二个将是上一个(已排序)。
我能够分别设计两者。以下代码提供了单独的输出。
db.collection.find({'_id':'value1'})
db.collection.find({'_id': {'$lt': 'value1'}}).sort({'_id':-1}).limit(1)
答案 0 :(得分:1)
您可以使用$lte
代替$lt
并用2
进行限制-从逻辑上讲,这将是相同的操作
db.collection.find({ _id: { $lte: 'value1' } }, { _id: 1, yourKey: 1 }).sort({_id: -1}).limit(2)
编辑:要获取特定键,您需要将其指定为.find()的第二个参数