在MongoDB中找不到错误

时间:2019-07-27 03:22:34

标签: mongodb

假设MongoDB数据库中有两个收藏集MoviesActors,请编写查询以查找所有超过23部电影的流派。

您的输出应仅包含流派的名称(将其重命名为“名称”)

电影收藏:每部电影都有其唯一的ID($movie_id),名称($movie_name),国家($country),导演($director),发行日期( $release_year,评分($ratings),类型($genre)和$actors [演员ID数组($actor_id)]。

每部电影都只有一种类型和一部导演。

首先,我要按流派分组,然后计算相同流派的数量,然后选择count> 23的那些流派。但是我的代码无法正常工作。

db.Movies.aggregate(
{$group : {name:"$genre", count:{$sum:1}}},
$match: {count : {$gt : 23}}},
{$project: {name:1, count:0}}
)

1 个答案:

答案 0 :(得分:0)

似乎是语法错误-聚合函数接受一个数组。并且$ group必须具有_id列才能进行分组

db.Movies.aggregate([
  {$group : {_id:"$genre", count:{$sum:1}}},
  {$match: {count : {$gt : 23}}},
  {$project: {name:"$_id", count:0}}
])