2016-12-02 2 views
0

나는 한달 평균 항공편을 계산하려고하지만 난MongoDB의 오류 객체는

오류 받고 있어요 "A 파이프 라인 단계 사양 객체가 정확히 하나의 필드를 포함해야합니다."

db.Flights.aggregate([ 
{$unwind: "$flights"}, 
{$project: 
    {_id: 0, 
    status: 1, 
    flights: 1 
}, 

$match: {"status": "active"}, 
$group: {_id: {"flights" : "$flights.flight_id", "Month":  "$depart_info.month_name_long"}, 
avg_flights: {$avg: "$flights.count"}}} 

]) 

답변

0

집계 파이프 라인이 다소 잘못되었습니다. 특히 $ match와 $ group 단계. 각 단계는 JSON 문서 여야합니다. 다음을 시도해보십시오.

db.Flights.aggregate([ 
    { 
     $unwind: "$flights" 
    }, 
    { 
    $project: { 
     _id: 0, 
     status: 1, 
     flights: 1 
    }, 
    }, 
    { 
    $match: { 
     "status": "active" 
    } 
    }, 
    { 
    $group: { 
     _id: { 
      "flights": "$flights.flight_id", 
      "Month": "$depart_info.month_name_long" 
     }, 
     avg_flights: { 
      $avg: "$flights.count" 
     } 
    } 
    } 
])