MongoDB Sort
In MongoDB, use the sort() method to sort data. The sort() method can specify the field to sort by through parameters, and use 1 and -1 to specify the sort order, where 1 is ascending order and -1 is for descending order.
Syntax
The basic syntax of the sort() method is as follows:
db.collection.find().sort({ field1: 1, field2: -1 })
{ field1: 1, field2: -1 }: Specify the field to sort by and the sort order. 1 indicates ascending order, -1 indicates descending order.
Example
Sort by field in ascending order:
Example
db.myCollection.find().sort({ age: 1 });
Sort by field in descending order:
Example
db.myCollection.find().sort({ createdAt: -1 });
You can specify multiple fields for sorting, and MongoDB will sort them in sequence according to the specified field order.
Example
db.myCollection.find().sort({ age: 1, createdAt: -1 });
The data in the col collection is as follows:
{ "_id" : ObjectId("56066542ade2f21f36b0313a"), "title" : "PHP 教程", "description" : "PHP 是一种创建动态交互性站点的强有力的服务器端脚本语言。", "by" : "Example", "url" : "http://www.example.com", "tags" : [ "php" ], "likes" : 200 }
{ "_id" : ObjectId("56066549ade2f21f36b0313b"), "title" : "Java 教程", "description" : "Java 是由Sun Microsystems公司于1995年5月推出的高级程序设计语言。", "by" : "Example", "url" : "http://www.example.com", "tags" : [ "java" ], "likes" : 150 }
{ "_id" : ObjectId("5606654fade2f21f36b0313c"), "title" : "MongoDB 教程", "description" : "MongoDB 是一个 Nosql 数据库", "by" : "Example", "url" : "http://www.example.com", "tags" : [ "mongodb" ], "likes" : 100 }
The following example demonstrates the data in the col collection sorted in descending order by the likes field:
>db.col.find({},{"title":1,_id:0}).sort({"likes":-1})
{ "title" : "PHP 教程" }
{ "title" : "Java 教程" }
{ "title" : "MongoDB 教程" }
>
Notes
- MongoDB sorts the query results when performing sorting, which may affect performance, especially on large datasets where sorting operations may be slower.
- If there is an index on the sort field, sorting operations may be more efficient. When performing frequent sorting operations, consider creating appropriate indexes to improve performance.
By using the sort() method, you can conveniently sort MongoDB query results to meet different sorting needs, and arrange documents in ascending or descending order as needed.
Other Extensions