可以mongodb聚合跳过无效文档

时间:2016-01-07 13:08:21

标签: mongodb

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

如果我使用时间运算符(聚合命令)在timestamp字段上运行聚合,则会抛出错误: can't convert from BSON type String to Date

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

mongodb 3.0.4

1 个答案:

答案 0 :(得分:3)

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

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