mongodb插入的最后一个文档

我们在使用Mongodb时,有一个需求,就是要取得某个集合的最后一条记录.
最开始的开始我们想通过_id排序, 但是这个应该不是严格的顺序.
我们还尝试了时间戳的方式,这个也不能解决我们的问题.
最后没办法我们就借助,redis生成了自增的id,存入的mongodb中.
不过这个用法真的很恶心.大家有什么好的方法解决这个问题吗?

阅读 3.7k
3 个回答

_id排就可以了,这个得生成本身就跟时间有关系

新手上路,请多包涵

ObjectId is a 12-byte BSON type, constructed using:

a 4-byte value representing the seconds since the Unix epoch,
a 3-byte machine identifier,
a 2-byte process id, and
a 3-byte counter, starting with a random value

如果没有自己复写_id的算法,可以用_id直接排序的

除非你们自己生产了Mongodb的ObjectId,否则_id是绝对唯一的primary key. 通过下面的排序就可以轻易得到最后一条数据.

 $sort:{_id:-1 }
撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进
推荐问题