У меня есть коллекция GameStatistics, и я хотел бы отсортировать всех игроков DES C по их баллам.
Все игроки перечислены во вложенном массиве activePlayers
с игрой. У каждого игрока есть поле points
(ниже я указал код и схему).
Кажется, я что-то упустил, я уже попробовал с aggregate (), но тоже не повезло.
sort = async (req: Request, res: Response, next: NextFunction) => {
const id = "0021900805";
const stats = await GameStats.findById(id)
.sort({ "vTeam.activePlayers.points": -1 })
.exec();
return res.status(200).json(stats);
};
Коллекция выглядит так:
[
{
"vTeam": {
"activePlayers": [
{
"teamId": "1610612759",
"firstName": "Lonnie",
"lastName": "Walker IV",
"points": "23",
"assists": "0",
"rebounds": "4",
"fgp": "40.0",
"to": "0",
"stl": "3",
"blk": "0"
},
{
"teamId": "1610612759",
"firstName": "LaMarcus",
"lastName": "Aldridge",
"points": "4",
"assists": "3",
"rebounds": "14",
"fgp": "45.0",
"to": "2",
"stl": "1",
"blk": "1"
}
]
},
"_id": "0021900805",
"createdAt": "2020-04-05T15:34:26.457Z",
"vTeamScore": "114"
}
]