下面显示我的代码。我必须计算重复值重复多少次。在这里,我在“结果”中存储了不同的值。我使用了collection.count()进行计算,但是它不起作用。请任何人告诉我我必须犯错的地方。非常感谢你 。

var DistinctIntoSingleDB = function(Collection,arr,opt,distVal,callback){
 Collection.find({}).distinct(distVal, function(err, results) {
      if(!err && results){
            console.log("Distinct Row Length :", results.length);
            var a,arr1 = [];
            for(var j=0; j<results.length; j++){
                collection.count({'V6': results[j]}, function(err, count) {
                      console.log(count)
                });

                arr1.push(results[j]+ " : " +a);
            }
            callback(results,arr1);
      }else{
           console.log(err, results);
           callback(results);
      }
 });

最佳答案

要获取集合“col1”上字段“field1”的不同值的出现,并将其写入单独的集合“distinctCount”。如果集合很大,还可以使用磁盘空间。

db.col1.aggregate(
          [{$group: {
              _id: "$field1",
              count: { $sum : 1 }
            }}, {
            $group: {
              _id: "$_id",
              count: { $sum : "$count" }
            }},{
              $out: "distinctCount"
            }],
         {allowDiskUse:true}
)

关于javascript - MongoDB算不算值(value)?,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/25888128/

10-09 18:54