mongodb聚合能否跳过无效文档

mongodb聚合能否跳过无效文档,mongodb,Mongodb,我有一套文件。它有时间戳字段,主要是日期,在少数情况下是字符串 如果我使用时间运算符(聚合命令)在时间戳字段上运行聚合,它将抛出一个错误: 无法将BSON类型字符串转换为日期 有没有办法跳过包含字符串时间戳的文档并继续聚合 mongodb 3.0.4您可以仅用于匹配具有有效日期字段的文档: db.collection.aggregate([ {$match: {dateField: {$type: 9} } } ]) 通常,您应该尝试保持集合中文档之间的数据类型一致。我会建议一个长

我有一套文件。它有时间戳字段,主要是日期,在少数情况下是字符串

如果我使用时间运算符(聚合命令)在时间戳字段上运行聚合,它将抛出一个错误:

无法将BSON类型字符串转换为日期

有没有办法跳过包含字符串时间戳的文档并继续聚合

mongodb 3.0.4

您可以仅用于匹配具有有效日期字段的文档:

db.collection.aggregate([
    {$match: {dateField: {$type: 9} } }
])

通常,您应该尝试保持集合中文档之间的数据类型一致。我会建议一个长期的策略来纠正数据类型(如果可能的话),只是为了你自己的理智。你是对的,数据应该是一致的。此度量只是以防万一(旧代码使用的字符串-新使用的日期)