對MongoDB 集合中的嵌入數組進行排序
問題:
您有一個有一個>問題:
您有一個MongoDB 集合學生記錄,每個記錄都包含嵌入的分數陣列。您希望按特定文件的分數降序對分數數組進行排序。
解決方案:
要對嵌入數組進行排序,您可以使用自訂應用程式程式碼或 MongoDB 2.2 中引入的聚合框架。
使用聚合框架:
db.students.aggregate( { $match: { _id : 1 }}, { $unwind: '$scores' }, { $match: { 'scores.type': 'homework' }}, { $sort: { 'scores.score': -1 }} )
以下MongoDB shell 聚合管道對_id 1 的文件的分數數組依降序排序分數:
輸出:
{ "result" : [ { "_id" : 1, "name" : "Aurelia Menendez", "scores" : { "type" : "homework", "score" : 71.76133439165544 } }, { "_id" : 1, "name" : "Aurelia Menendez", "scores" : { "type" : "homework", "score" : 34.85718117893772 } } ], "ok" : 1 }
以上是如何對 MongoDB 集合中的嵌入陣列進行排序?的詳細內容。更多資訊請關注PHP中文網其他相關文章!