0

MongoDB を使用している既存の Java ベースのアプリケーションに取り組んでいます

クラスの1つで、以下に示すようにmongo dbグループを見ました

BasicDBList result = (BasicDBList) coll.group(key, cond, initial, reduce);

、、keyは3 つの異なるcondであり、reduce は文字列形式の関数です。initialBasicDBObject

私の質問は、形成されたクエリを確認できますか??

4

1 に答える 1

2

MongoDB Javaドライバーのソースコードがある場合は、com.mongodb.GroupCommandこのクエリがどのように構築されているかを確認できます。次のようになります。

    BasicDBObject args  = new BasicDBObject();
    args.put( "ns" , input );
    args.put( "key" , keys );
    args.put( "cond" , condition );
    args.put( "$reduce" , reduce );
    args.put( "initial" , initial );
    if ( finalize != null )
        args.put( "finalize" , finalize );
    return new BasicDBObject( "group" , args );

これが変換するのは、次のようなグループコマンド(http://docs.mongodb.org/manual/reference/command/group/ )です。

{ "group" : { "ns" : "coll" , 
              "key" : {<keys>} , 
              "cond" : {<cond>} , 
              "$reduce" : "<reduce>" , 
              "initial" : { }
            }
}
于 2013-01-30T15:03:31.053 に答える