mongodb - Mongo group分组后,怎么对分组后的结果进行从大到小排序,并取前5个
怪我咯
怪我咯 2017-04-24 09:14:07
0
2
1141
BasicDBObject key = new BasicDBObject("ip",true);
BasicDBObject initial = new BasicDBObject("count",0);
BasicDBObject cond = 。。。。
String reduce = "function(obj,prev){prev.count+=1}";
String finalize =????? 

col.group(key,initial,cond,reduce,finalize);

最后的结果,我想要count数量从大到小排列,并且只取前五个,能用finalize实现吗?具体怎么写函数呢??或者能用什么方法实现????

怪我咯
怪我咯

走同样的路,发现不同的人生

全員に返信(2)
迷茫

正直、mongoでのgroup-byはかなり面倒です。ネイティブ mongo ステートメント、パイプラインを介した集計クエリ

リーリー

term: クエリするコレクションの名前
$match: 一致条件、オプション
$limit: 結果の数、オプション
$group: 集計ルール
$sort: クエリ結果はソートされ、-1 は降順を意味します

http://docs.moncoming.com/manual-zh/reference/operator/aggregation.html#aggregation-pipeline-operator-reference

いいねを押す +0
小葫芦

グループの計算と並べ替えには集計を使用します。
簡単な例

リーリー

http://docs.mongodb.org/manual/reference/command/aggregate/

を参照してください。
いいねを押す +0
人気のチュートリアル
詳細>
最新のダウンロード
詳細>
ウェブエフェクト
公式サイト
サイト素材
フロントエンドテンプレート