将文本字段的匹配与汇总

时间:2016-11-01 23:35:52

标签: mongodb

运行以下语句:

db.users.aggregate(
   [
       { $match : { "confirmed" : {$eq: "true" } } },
       { $group : { _id : "$email", email: { $push: "$email" } } }
   ]
)

给我零结果,虽然下面的一个完美地给出了~12k:

db.getCollection('users').find({confirmed:"true"})

问题:如何正确组合匹配和分组?我基本上在寻找SELECT email FROM users GROUP BY email

添加: SELECT email, count(*) FROM users GROUP BY email将是我的长期目标,但我似乎无法理解mongodb :(

1 个答案:

答案 0 :(得分:0)

db.users.aggregate(
   [
       { $match : { "confirmed" : "true" }  },
       { $group : { _id : "$email",count:{$sum:1} } }
   ]
)

` 请检查如果布尔值为true,则布尔值是否为无需将其作为字符串检查,它将为您提供0 document.just 证实:真