MongoDB compass 它没有导出所有数据以供收集

MongoDB compass its not exporting all data for collection

尝试从 MongoDB compass 导出集合时,它不会导出所有数据,它只会导出所有文档中存在的字段。例如:如果文档 1 有

{
    "Name": "Alex",
    "__v": 0
}

如果文档 2 有


{
    "Name": "Joe",
     "ID"  : 07
    "__v": 0
}

并且在尝试导出集合时,它仅导出名称字段。我正在尝试通过 MongoDB Compass 导出所有字段。有没有其他方法可以通过任何代码或脚本导出所有数据

编辑:解决方案是更新到新版本的指南针,并且在从 mongo 导出数据时,如果列表中不存在字段名称,则可以通过我们添加一个选项来添加字段罗盘错过的领域

MongoDB Compass 早就知道导出导入数据的问题了,看来他们不愿意改进!

当您尝试使用 compass 导出数据时,它会使用一些示例文档来 select 字段,如果您运气不好,您会漏掉一些字段。

解决方案:

  1. 使用 Mongo DB Compass 聚合 选项卡查找所有文档中的所有现有字段:

    [{$项目:{ 键值数组:{ $objectToArray: '$$ROOT'} }},
    {$unwind: '$arrayofkeyvalue'},
    {$组:{ _id:空, 全键:{ $addToSet: '$arrayofkeyvalue.k' } }}]

  2. 将第 1 步中的字段添加到 导出完整集合(Select 个字段)

  3. 导出!