MongoDB 数组展开是指将一个包含多个元素的数组展开为多个独立的文档,在 MongoDB 中,可以使用 $unwind
操作符来实现数组展开。
目前成都创新互联已为上千家的企业提供了网站建设、域名、网站空间、网站改版维护、企业网站设计、政和网站维护等服务,公司将坚持客户导向、应用为本的策略,正道将秉承"和谐、参与、激情"的文化,与客户和合作伙伴齐心协力一起成长,共同发展。
以下是一个简单的示例:
假设我们有一个名为 students
的集合,其中每个文档包含一个名为 courses
的数组字段,表示学生所选的课程。
{ "_id": 1, "name": "张三", "courses": ["语文", "数学", "英语"] }, { "_id": 2, "name": "李四", "courses": ["物理", "化学"] }
我们可以使用 $unwind
操作符将 courses
数组展开为多个独立的文档,如下所示:
db.students.aggregate([ { $unwind: "$courses" } ])
执行上述聚合查询后,将得到以下结果:
{ "_id": 1, "name": "张三", "courses": "语文" }, { "_id": 1, "name": "张三", "courses": "数学" }, { "_id": 1, "name": "张三", "courses": "英语" }, { "_id": 2, "name": "李四", "courses": "物理" }, { "_id": 2, "name": "李四", "courses": "化学" }
这样,原本包含在一个数组中的多个元素被展开为多个独立的文档。