Actully 내가 프런트 엔드에서 mongo로 날짜를 보내면 날짜가 1 씩 줄어 듭니다. 다시 검색하면 올바른 날짜가 표시되지만 월 및 연도에 따라 집계를 $ month, $ year 속성을 사용하면 더 적은 날짜 값에 따라 집계가 수행됩니다. 이유는 무엇입니까? 괜찮 으면 올바른 집계를 수행 할 수있는 솔루션을 제공하십시오. 통합의 코드는 - 사전에MongoDB에 ISO 날짜가
DBObject projectFields = new BasicDBObject();
projectFields.put("creationDate","$creationDate");
projectFields.put("month",new BasicDBObject("$month", "$creationDate"));
projectFields.put("year",new BasicDBObject("$year", "$creationDate"));
projectFields.put("day",new BasicDBObject("$dayOfMonth", "$creationDate"));
projectFields.put("batchQty","$batchQty");
DBObject projectObj = new BasicDBObject("$project", projectFields);
DBObject groupIdFieldsObj = new BasicDBObject();
groupIdFieldsObj.put("month","$month");
groupIdFieldsObj.put("year","$year");
groupFieldsObj.put("_id", groupIdFieldsObj);
DBObject groupSumFieldsObj = new BasicDBObject();
groupSumFieldsObj.put("$sum", "$batchQty");
groupFieldsObj.put("batchQty", groupSumFieldsObj);
DBObject groupObj = new BasicDBObject("$group", groupFieldsObj);
DBObject outCollObj = new BasicDBObject();
outCollObj.put("$out", "salesExportData");
coll.aggregate(groupObj,projectObj,outCollObj);
감사합니다.
샘플 문서를 추가 할 수 있습니까? – Veeram