MongoDB 数组展开

MongoDB 数组展开是指将一个包含多个元素的数组展开为多个独立的文档,在 MongoDB 中,可以使用 $unwind 操作符来实现数组展开。

MongoDB 数组展开
(图片来源网络,侵删)

以下是一个简单的示例:

假设我们有一个名为 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": "化学"
}

这样,原本包含在一个数组中的多个元素被展开为多个独立的文档。

原创文章,作者:未希,如若转载,请注明出处:https://www.kdun.com/ask/482729.html

(0)
未希新媒体运营
上一篇 2024-04-16 16:41
下一篇 2024-04-16 16:44

相关推荐

发表回复

您的电子邮箱地址不会被公开。 必填项已用 * 标注

云产品限时秒杀。精选云产品高防服务器,20M大带宽限量抢购  >>点击进入