2017-08-28 16 views
-1

这里通过以相反的顺序指数MongoDB中的子文档进行排序是MongoDB中的子文件:如何在没有更新的实际阵列

"comment_history" : [ 
     "A", 
     "B", 
     "C", 
    ] 

我想是这样的

"comment_history" : [ 
     "C", 
     "B", 
     "A", 
    ] 
+0

你可以在'sort'中指定'-1'作为降序或逆序排序 – Mekicha

+0

[在查询和项目的所有字段排序数组]可能重复(https://stackoverflow.com/questions/22888885/sort-array-in-query-and-project-all-fields) – felix

+0

你试过把你的问题首先进入谷歌的标题?因为['$ sort'](https://docs.mongodb.com/manual/reference/operator/update/sort/)的更新修饰符正好位于顶端,如果您的意图是按照该顺序“存储”总是。如果你只是想在“结果”(没有修改),然后一点搜索应该导致你[[$ reverseArray']](https://docs.mongodb.com/manual/reference/operator/aggregation/reverseArray /)。但是你的问题并没有真正地说出你实际上意味着哪一个。 –

回答

0

随着mongodb 3.4你可以使用“$ reverseArray”运算符

db.posts.aggregate([ 
    { 
    $project: 
     { 
     title: 1, 
     comment_history: { $reverseArray: "$comment_history" } 
     } 
    } 
    ])