mongoDB агрегат найти общее количество сотрудников группы по каждому штату - PullRequest
0 голосов
/ 21 января 2019

Найти общее количество сотрудников группы по каждому штату, используя агрегат Я попробовал следующее в скриншоте ниже. Но результат равен 0.

enter image description here

db.research.aggregate({$unwind:'$offices'},{"$match": 
{'offices.country_code':"USA"}},{"$project": {'offices.state_code' : 1}}, 
{"$group" : {"_id":'$of
fices.state_code',"count" : {"$sum":'$number_of_employees'}}})

1 Ответ

0 голосов
/ 21 января 2019

вам нужно $project number_of_employees, чтобы сосчитать на следующем этапе, или вы можете удалить $project этап

db.research.aggregate([
    {$unwind:'$offices'},
    {"$match": {'offices.country_code':"USA"}},
    {"$project": {'offices.state_code' : 1, 'number_of_employees' : 1}}, //project number_of_employees
    {"$group" : {"_id":'$offices.state_code',"count" : {"$sum":'$number_of_employees'}}}
])

или

db.research.aggregate([
    {$unwind:'$offices'},
    {"$match": {'offices.country_code':"USA"}},
    {"$group" : {"_id":'$offices.state_code',"count" : {"$sum":'$number_of_employees'}}}
])
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...