【发布时间】:2018-07-23 21:08:57
【问题描述】:
我正在开发示例应用程序,因为我使用了聚合,我实现了一个基于用户 ID 的查询,该查询与从它获取 MAXDate 和 MINDate 的状态匹配。如何根据最大和最小字段获取剩余字段。
app.get('/varun', function (req, res) {
Light.aggregate( [
{
"$match" : {
"STATUS":"LIGHTS OFF"}
},
{
"$group" : {
"_id" : "$SWITCHID",
LIGHTOFFMINDATE: { "$min" : "$RECEIVEDDATE"
},
LIGHTOFFMAXDATE:{"$max":"$RECEIVEDDATE"
},
information:{"$push":
{
_id:"$SWITCHID",
TOTALSTREETLIGHTS:"$TOTALSTREETLIGHTS",
WORKINGSTREETLIGHTS:"$WORKINGSTREETLIGHTS",
CUMULATIVEKWH:"$CUMULATIVEKWH",
STATUS:"$STATUS",
LATITUDE:"$LATITUDE",
LONGITUDE:"$LONGITUDE",
OFFICE_ID:"$OFFICE_ID",
FLAG2:"$FLAG2",
CREATE_DATE:"$CREATE_DATE"
}
},
},
}]
, function (err, light) {
console.log("naresh:" +JSON.stringify(light));
res.json(light);
});
});
output:-
"_id": "Z6-W66-9C/3",
"LIGHTOFFMINDATE": "2018-02-09T00:00:00.000Z",
"LIGHTOFFMAXDATE": "2019-02-09T00:00:00.000Z",
在这里,我正在放置带有相关输出的代码。任何人都可以建议我如何解决这个问题。
【问题讨论】:
标签: javascript node.js mongodb reactjs aggregation-framework