首先,我们在数据库中,mongodb的聚合查询是这样写。
db.getCollection('parking_record').aggregate(
{$match : {"appId" : "2e1800b22ae70600", "leaveTime" : {"$gt" : ISODate("2017-07-12T00:00:00"), "$lt" : ISODate("2017-07-13T00:00:00")}}},
{$group : {"_id" : "$leaveMethod", "count" : {$sum : 1}}},
{$sort : {"_id" : 1}}
)
在java类中,应该怎样呢?这是我写的其中一个方法。
(首先要导入mongodb的java驱动包mongo-java-driver-3.2.2.jar)
/**
* 根据日期统计离场方式
* @param app_id 插件ID
* @param beginDate 开始日期
* @param endDate 结束日期
* @return {"ManualLeave":2,"AutoLeave":4}
* @throws Exception
*/
public String aggregateLeaveMethodByDate(String app_id, Date beginDate, Date endDate) throws Exception {
MongoCollection