mongodb如何降序显示所有数据?

mongodb如何实现倒序排列?
在网上查了一下,都是发现需要只能针对特地字段进行排序,比如按照age 或是日期 等
但是我采集的时候,没有这些特征字符
在Mysql可以按照id来进行排序 那么在mongodb有没有比较好的办法?

阅读 9.6k
4 个回答

如果_id是mongo自动生成的就用_id好了,如果_id也是你自己生成的那就只能你自己去定义一个排序的key了。

mongo的_id和mysql的id类似,差不多的。
mysql的你可以设置mysql自增,然后按照这个排序
mongo _id默认也是按照增长的。
MongoDB的文档必须有一个_id键。
目的是为了确认在集合里的每个文档都能被唯一标识。
ObjectId 是 _id 的默认类型。
ObjectId 采用12字节的存储空间,每个字节两位16进制数字,是一个24位的字符串。
12位生成规则:
[0,1,2,3] [4,5,6] [7,8] [9,10,11]
时间戳 |机器码 |PID |计数器
前四位是时间戳,可以提供秒级别的唯一性。
接下来三位是所在主机的唯一标识符,通常是机器主机名的散列值。
接下来两位是产生ObjectId的PID,确保同一台机器上并发产生的ObjectId是唯一的。前九位保证了同一秒钟不同机器的不同进程产生的ObjectId时唯一的。
最后三位是自增计数器,确保相同进程同一秒钟产生的ObjectId是唯一的
基本上就是在文件中的顺序(因此往往也是insert的顺序)。

直接按照 mongodb 隐式创建的对象的 _id 进行倒序即可, 就是你想要的

MongoDb原声语句: {$sort: {FieldName:1或者-1}}
1:表示升序
-1:表示降序

新手上路,请多包涵

mongodb的python写法是:db[table].find().sort("user_id",1或-1) #同样升序和降序
mongodb的java写法是: collection.find(filter_dbobject).limit(10).sort(newBasicDBObject("create_time",-1));

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