首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >在mongoDB中将数组结构规范化为多个文档

在mongoDB中将数组结构规范化为多个文档
EN

Stack Overflow用户
提问于 2021-03-01 22:01:05
回答 2查看 71关注 0票数 1

输入是一次文档

代码语言:javascript
运行
复制
{
  "name": [
    "abc",
    "xyz"
  ],
  "values": [
    "123",
    "100"
  ]
}

我想要将数组规范化为多个文档的解释abc ,以及xyz 都是动态出现的,这些都是用户定义的参数

预期输出

代码语言:javascript
运行
复制
[
    {
        "data": {
            "name": "abc",
            "values": "123"
        }
    },
    {
        "data": {
            "name": "xyz",
            "values": "100"
        }
    }
];
EN

Stack Overflow用户

发布于 2021-03-01 22:59:54

试试这个:

代码语言:javascript
运行
复制
db.testCollection.aggregate([
    {
        $project: {
            "data": {
                $map: {
                    input: { $zip: { inputs: ["$name", "$values"] } },
                    as: "item",
                    in: {
                        name: { $arrayElemAt: ["$$item", 0] },
                        values: { $arrayElemAt: ["$$item", 1] }
                    }
                }
            }
        }
    },
    { $unwind: "$data" }
]);
票数 1
EN
查看全部 2 条回答
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/66423493

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档