猿问

Mongo查询去重后的总数

Mongo里现有一批数据,大致结构如下:
{"userId":1,"loginTime":ISODate("2017-11-28T10:47:57.525+08:00")}
{"userId":2,"loginTime":ISODate("2017-11-28T11:47:57.525+08:00")}
{"userId":1,"loginTime":ISODate("2017-11-28T12:47:57.525+08:00")}
{"userId":3,"loginTime":ISODate("2017-11-28T13:47:57.525+08:00")}
要按userId字段去重后统计总数,示例数据返回结果应该是:3,在SHELL中可以使用
db.logins.distinct("userId").length
来查询,但在spring-data-mongo中使用MongoTemplate怎样实现相同功能,注意不能使用distinct把结果都查出来后取size,实际的数量级可能比较大,如千万级别。
另外听说Mongo中distinct结果集不能超过16MB(不确定),那么上面SHELL中的用法应该也会有问题。
整个需求可以简单描述为:查询每日登录人数(注意不是人次)
拉风的咖菲猫
浏览 3647回答 2
2回答
随时随地看视频慕课网APP

相关分类

JavaScript
我要回答