如果使用下面的
Analytic.collection.map_reduce(map, reduce,
:query => {:page => subclass_name},
:sort => [[:pageviews, Mongo::DESCENDING]]).find.to_a
它不会按 pageviews
排序。或者,如果它是哈希数组:
Analytic.collection.map_reduce(map, reduce,
:query => {:page => subclass_name},
:sort => [{:pageviews => Mongo::DESCENDING}]).find.to_a
也不行。我认为它必须是一个数组的原因是指定要排序的第一个字段等。我也尝试了一个平面数组而不是像上面列出的第一个代码中的数组数组,但它也没有用.
它不工作吗?这是规范:http://api.mongodb.org/ruby/current/Mongo/Collection.html#map_reduce-instance_method
最佳答案
你想做什么?排序实际上仅与限制结合使用:它在 map 之前应用,因此您可以只对最新的 20 个项目或其他内容进行 MapReduce。如果您尝试对结果进行排序,只需对输出集合进行常规排序即可。
关于mongodb - MongoDB 的 Map/Reduce 排序有用吗?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/3764493/