以下是一个使用MongoDB聚合框架按照演员分组的示例代码:
db.movies.aggregate([
{
$unwind: "$actors" // 拆分演员数组
},
{
$group: {
_id: "$actors", // 按演员分组
movies: {
$push: {
title: "$title",
genre: "$genre"
} // 将电影标题和类型添加到数组中
}
}
}
]);
这个代码示例假设有一个名为movies
的集合,其中包含一个actors
字段,它是一个演员数组。
首先,使用$unwind
操作符将演员数组拆分成单个演员文档。然后,使用$group
操作符按演员字段进行分组。在$group
操作中,使用$push
操作符将每个电影的标题和类型添加到movies
数组中。
最后,聚合操作将返回一个按演员分组的结果,其中每个演员文档都包含一个movies
数组,其中包含了该演员参演的电影的标题和类型。
请注意,为了使用这个代码示例,您需要将movies
和actors
字段替换为您自己集合中的字段名称,并根据需要使用其他聚合阶段。