0
MongoDB 집계 파이프 라인을 만들었습니다. 내 데이터를 방과 연도별로 그룹화하여 아래 결과를 얻습니다. 그러나 나는 1 년에 평균 방을 얻고 싶습니다. 즉, 년 평균 객실 거래 수익 그룹을 가져오고 싶습니다.
let pipeline = [
{
"$group" : {
"_id" : { "room" : "$room", "year" : "$year"},
"total_revs" : { "$sum" : 1 },
"average_stay" : { "$avg" : { "$subtract": ["$endDate", "$startDate"]}},
"average_leadtime" : { "$avg" : { "$subtract": ["$startDate", "$orderDate"]}},
"average_party_size" : { "$avg" : "$numberOfPeople" },
"transaction_revenue" : { "$avg": "$tranFee" }
}
}
]
let promise = HReservation.aggregate(pipeline).exec();
promise.then(result => res.send(result))
.catch(err => res.status(500).send(err));
이 파이프 라인은 다음과 같은 결과를 : 여기에
내 파이프 라인입니다
[
{
"_id": {
"year": 2013
},
"total_revs": 66100,
"average_stay": 233698275.34039333,
"average_leadtime": 6089703358.547655,
"average_party_size": null,
"transaction_revenue": 10.53087821482602
},
{
"_id": {
"year": 2012
},
"total_revs": 60936,
"average_stay": 235630563.21386373,
"average_leadtime": 6001076644.348168,
"average_party_size": null,
"transaction_revenue": 10.534949947485886
},
{
"_id": {
"year": 2010
},
"total_revs": 50492,
"average_stay": 241539095.3022261,
"average_leadtime": 6193156175.235681,
"average_party_size": null,
"transaction_revenue": 10.506802463756634
},
{
"_id": {
"year": 2015
},
"total_revs": 81832,
"average_stay": 229180877.89617753,
"average_leadtime": 6365565822.661061,
"average_party_size": null,
"transaction_revenue": 10.7106377700655
}
]
문제 :
이 것이 바로 나에게 말하고있다 대략 무엇 거래 비용은 거래 당 ... $ 10 약간의 de 데이터의 변화.
1 년 동안 평균을 계산해야합니다. 나는 그것이 올바르게 표현하고 있다고 생각한다.
원하는 결과 : 나는 매년 평균 총 객실 거래 수익을 얻고 싶습니다.
원하는 결과를 얻으려면 어떻게해야합니까?