Dee*_*hah 4 mongodb mongodb-query
我需要获取 MongoDB 集合中的第一条插入记录,我当前正在使用以下查询:
db.users.find({}).sort({"created_at":1}).limit(1);
Run Code Online (Sandbox Code Playgroud)
但是,这会占用大量内存。该集合约有 100K 条记录。
做到这一点的有效方法是什么?
MongoDB _id 是唯一标识符,在将文档插入 MongoDB 集合时自动生成
_id 字段存储 ObjectId 值并自动索引。
根据 MongoDB 文档,
12 字节的 ObjectId 值包括:
4 字节值,表示自 Unix 纪元以来的秒数,
3字节机器标识符,
2 字节进程 ID,以及
3 字节计数器,以随机值开始。
根据上述问题的描述,要获取第一个插入的记录,请尝试在 MongoDB shell 中执行以下 mongodb find 操作。
db.users.find({}).sort({"_id":1}).limit(1);
Run Code Online (Sandbox Code Playgroud)
在上面的查询中,我们根据 _id 字段对结果进行排序,因为 _id 对象 ID 值由 unix 纪元时间戳组成
| 归档时间: |
|
| 查看次数: |
7351 次 |
| 最近记录: |