MongoDB 查詢使用 limit 和 sort 進行修改
MongoDB 提供查詢修飾符,例如 limit
和 Orders
子句,以便在執行查詢時提供更大的靈活性。我們將看看以下查詢修飾符
MongoDB limit
此修飾符用於限制查詢結果集中返回的文件數。以下示例顯示瞭如何完成此操作。
db.Employee.find().limit(2).forEach(printjson);
程式碼說明:
- 上面的程式碼使用 find 函式返回集合中的所有文件,然後使用 limit 子句將返回的文件數限制為 2。
輸出:
如果命令執行成功,將顯示以下輸出
> db.Employee.find().limit(2).forEach(printjson);
{
"_id" : ObjectId("563479df8a8a4246bd27d786"),
"Employeeid" : 3,
"EmployeeName" : '"Joe"
}
{
"_id" : ObjectId("563479d48a8a4246bd27d785"),
"Employeeid" : 2,
"EmployeeName" : ' "Mohan"
}
輸出清楚地顯示,由於存在 limit
修飾符,因此最多隻有 2 條記錄作為結果集的一部分以基於 ObjectId
的升序返回。
MongoDB sort
可以根據集合中任何鍵的升序或降序指定要返回的文件的順序。以下示例顯示瞭如何完成此操作。
db.Employee.find().sort({Employeeid:-1}).forEach(printjson)
程式碼說明:
- 上面的程式碼採用
sort
函式,該函式返回集合中的所有文件,然後使用修飾符更改記錄的返回順序。這裡-1
表示我們想要根據 Employeeid 的降序返回文件。
如果命令執行成功,將顯示以下輸出
輸出:
> db.Employee.find().sort({Employeeid:-1}).forEach(printjson);
{
"_id" : ObjectId("563479df8a8a4246bd27d786"),
"Employeeid" : 3,
"EmployeeName" : '"Joe"
}
{
"_id" : ObjectId("563479d48a8a4246bd27d785"),
"Employeeid" : 2,
"EmployeeName" : ' "Mohan"
}
{
"_id" : objectId("563479cc8a8a4246bd27d784"),
"Employeeid" : 1,
"EmployeeName" :'"Smith"
}
輸出清楚地顯示按 Employeeid 的降序返回的文件。