Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/lua/3.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
查找MongoDB集合中使用的所有类型_Mongodb_Types_Aggregation Framework - Fatal编程技术网

查找MongoDB集合中使用的所有类型

查找MongoDB集合中使用的所有类型,mongodb,types,aggregation-framework,Mongodb,Types,Aggregation Framework,假设您想使用mongoexport/import更新集合(原因已解释)。您应该确保集合中的类型是JSON安全的 如何使用聚合框架确定集合的所有文档(包括数组元素内)中使用的所有类型?可以与和结合使用 我认为这样的事情应该让你开始: db.collection.aggregate([ { $project: { types: { $map: { input: { $objectToArray: "$$CURRENT" }, i

假设您想使用mongoexport/import更新集合(原因已解释)。您应该确保集合中的类型是JSON安全的

如何使用聚合框架确定集合的所有文档(包括数组元素内)中使用的所有类型?

可以与和结合使用

我认为这样的事情应该让你开始:

db.collection.aggregate([
  { $project: {
      types: {
        $map: {
          input: { $objectToArray: "$$CURRENT" },
          in: { $type: [ "$$this.v" ] }
        }
      }
    }
  }
])
注意,它不是递归的,也不会深入到数组的值中,因为我也不确定您想要深入多少层,甚至不知道您想要的输出是什么。所以希望这对您来说是一个好的开始


您可以看到包含各种类型输入的聚合。

谢谢。有趣的开始。知道如何递归或数组吗?