2017-03-10 8 views
0

「に選択して」。MongoDBは、私はMongoDBのクエリについて質問があり

私のデータセット(20個の以上000 000文書)

{ 
     "_id" : ObjectId("58c0386945544b2679dbdded"), 
     "local" : "XXXX", 
     "mail" : "[email protected]", 
} 

私は別のローカルにあるメールを検索します。 [email protected] = 2 [email protected] = 1 [email protected] = 1

そして、最高のは、そのようなものです:: 例 local,email A, [email protected] B, [email protected] C, [email protected] D, [email protected] 結果がでなければなりません

+1

共有してくださいあなたの助けを [email protected],2,(A,D) [email protected],1,(B) [email protected],1,(C)

おかげで、あなたのコード、そしてそれが失敗する場所。 – Luuklag

答えて

1

使用aggregateコマンド、

db.document.aggregate([{ 
     $group: { 
      _id: { 
       mail: "$mail", 
       local: "$local" 
      } 
     } 
    }, { 
     $group: { 
      _id: "$_id.mail", 
      local: { 
       $addToSet: "$_id.local" 
      }, 
      count: { 
       $sum: 1 
      } 
     } 
    }]) 
関連する問題