在本章中,我们将学习如何在 mongodb 中排序记录。
要在mongodb中排序文档,需要使用sort()
方法。 该方法接受包含字段列表及其排序顺序的文档。使用指定排序顺序1
和-1
。 1
用于升序,而-1
用于降序。
语法
sort()
方法的基本语法如下 -
>db.collection_name.find().sort({key:1})
示例
假设集合myycol
有以下数据。
> db.mycol.find({},{'_id':1, 'title':1})
{ "_id" : 101, "title" : "mongodb guide" }
{ "_id" : 102, "title" : "nosql database" }
{ "_id" : 104, "title" : "python quick guide" }
{ "_id" : 100, "title" : "mongodb overview" }
>
以下示例将按标题降序排序显示文档。
> ## 按`title`降序排序
> db.mycol.find({},{"title":1,_id:0}).sort({"title":-1})
{ "title" : "python quick guide" }
{ "title" : "nosql database" }
{ "title" : "mongodb overview" }
{ "title" : "mongodb guide" }
> ## 按`title`升序排序
> db.mycol.find({},{"title":1,_id:0}).sort({"title":1})
{ "title" : "mongodb guide" }
{ "title" : "mongodb overview" }
{ "title" : "nosql database" }
{ "title" : "python quick guide" }
>
以下示例将按“_id”降序和升序排序显示文档。
> 按“_id”升序排序
> db.mycol.find({},{"title":1,_id:1}).sort({"_id":1})
{ "_id" : 100, "title" : "mongodb overview" }
{ "_id" : 101, "title" : "mongodb guide" }
{ "_id" : 102, "title" : "nosql database" }
{ "_id" : 104, "title" : "python quick guide" }
> # 按“_id”降序排序
> db.mycol.find({},{"title":1,_id:1}).sort({"_id":-1})
{ "_id" : 104, "title" : "python quick guide" }
{ "_id" : 102, "title" : "nosql database" }
{ "_id" : 101, "title" : "mongodb guide" }
{ "_id" : 100, "title" : "mongodb overview" }
>