是否可以获取文档的位置进行查询? 示例:
db.users.find().sort({created:-1})
返回:
0: {name:"user1",created:5}
1: {name:"user1",created:4}
2: {name:"user1",created:3}
3: {name:"user1",created:2}
如何得到这些索引(0,1,2,3)?
在 MongoDB v5.0+ 中,您可以使用
$setWindowFields
和 $documentNumber
来分配一个字段,例如名称为 position
,以记录结果集的位置。
db.collection.aggregate([
{
"$setWindowFields": {
"sortBy": {
"created": -1
},
"output": {
"position": {
"$documentNumber": {}
}
}
}
}
])