Я выполняю задание, и в вопросе уточняется: Перечислите пять актеров (актрис), которые получили наибольшее количество наград и номинаций. Верните их имена и новое поле под названием «распознавания»
. Пока мне удалось раскрутить поле актера и успешно создать поле распознавания, чтобы подсчитать общее количество побед и номинаций. Я пытаюсь добавить сортировку, чтобы отфильтровать 5 самых высоких итоговых показателей актера. Как бы я это сделал
Вот пример из базы данных
{
"_id" : ObjectId("5e691e99fceb31c7d6cc327e"),
"title" : "Toy Story",
"year" : 1995,
"rated" : "G",
"runtime" : 81,
"countries" : [
"USA"
],
"genres" : [
"Animation",
"Adventure",
"Comedy"
],
"director" : "John Lasseter",
"writers" : [
"John Lasseter",
"Pete Docter",
"Andrew Stanton",
"Joe Ranft",
"Joss Whedon",
"Andrew Stanton",
"Joel Cohen",
"Alec Sokolow"
],
"actors" : [
"Tom Hanks",
"Tim Allen",
"Don Rickles",
"Jim Varney"
],
"plot" : "A cowboy doll is profoundly threatened and jealous when a new spaceman figure supplants him as top toy in a boy's room.",
"poster" : "http://ia.media-imdb.com/images/M/MV5BMTgwMjI4MzU5N15BMl5BanBnXkFtZTcwMTMyNTk3OA@@._V1_SX300.jpg",
"imdb" : {
"id" : "tt0114709",
"rating" : 8.3,
"votes" : 574251
},
"tomato" : {
"meter" : 100,
"image" : "certified",
"rating" : 9,
"reviews" : 78,
"fresh" : 78,
"consensus" : "Entertaining as it is innovative, Toy Story reinvigorated animation while heralding the arrival of Pixar as a family-friendly force to be reckoned with.",
"userMeter" : 92,
"userRating" : 3.7,
"userReviews" : 1104709
},
"metacritic" : 92,
"awards" : {
"wins" : 22,
"nominations" : 17,
"text" : "Nominated for 3 Oscars. Another 22 wins & 17 nominations."
},
"type" : "movie",
"myRating" : false,
"myRatings" : 94.66666666666667
}
Вот что я сделал до сих пор для запроса.
db.movies.aggregate([
{
$unwind: "$actors"
},
{
$group: {
_id: {
actors: "$actors",
wins: "$awards.wins",
nominations: "$awards.nominations"
},
recognition: {
$sum: {
$add: [
"$awards.wins",
"$awards.nominations"
]
}
}
}
}
])
Я знаю, что мне нужно отсортировать по распознаванию, а затем ограничить до 5, но я не уверен, как. Любая помощь будет оценена