mongo 上的 $out 命令正在创建一个空集合

$out comand on pymongo is creating an empty collection

我有以下 python 代码:

import pymongo

connection_string = 'mongodb://localhost'
connection = pymongo.MongoClient(connection_string)
database = connection.solutions
pipe = [
        {
    "$match": {
      "metrictimestamp": {"$gte": "2018-02-01T00:00:00.000+00:00", "$lte": "2018-02-01T23:59:59.000+00:00"}
    }
         },
        {"$out": "day"}
              
      ]

database.solution3.aggregate(pipe,allowDiskUse=True)

但是“day”集合是空的,我做错了吗?

查询是创建一个包含特定日期文档的集合

您正在根据

进行字符串比较

如果字段 metricTimestamp 是整数或长整数,则使用 new Date("2018-02-01T00:00:00Z").getTime()。另一个领域也是如此。

如果字段的类型为 date,请使用 new Date() 不带时间方法的变体。

如果字段是字符串类型,使用$dateFromString

使用这个:

{
    "$match": {
      "metrictimestamp": {
        "$gte": ISODate("2018-02-01T00:00:00Z"),
        "$lte": ISODate("2018-02-01T23:59:59Z")
      }
    }
  }

play