【问题标题】:MongoDb MapReduce with comparsion of datesMongoDb MapReduce 与日期比较
【发布时间】:2016-04-26 19:54:48
【问题描述】:

我在 mapreduce 查询中有一个 map 函数,我尝试比较几个日期。

假设文档包含一个属性“已创建”,类型为 ISODate:

{
  Created: ISODate("2016-01-01T12:00:00.000+0000")
}

在我的 map/reduce 方法中,我通过范围传递了一个日期:

{
   start: ISODate("2015-01-01T12:00:00.000+0000")
}

在我的地图方法中,我打印出以下内容

function() {
   print(this.Created);
   print(start);
   print(this.Created > start);
}

我会在我的日志中得到以下输出:

2016-04-25T16:19:04.921+0200 I -        [conn129] ISODate("2016-01-01T12:00:00.000+0000")
2016-04-25T16:19:04.922+0200 I -        [conn129] Sat Jan 01 2015 13:00:00 GMT+0100 (Vest-Europa (normaltid))
2016-04-25T16:19:04.922+0200 I -        [conn129] false

我应该怎么做才能比较创建日期和开始日期?

【问题讨论】:

    标签: mongodb mapreduce


    【解决方案1】:

    原来 Visual Studio 欺骗了我。

    测试数据是从 json 文件中提取的,出于某种原因,Visual Studio 选择将部分ISODate("...") 值更改为"ISODate(\"...\")" 字符串。

    这不容易被发现,所以我想这里的教训是“不要使用 Visual Studio 来查看 json 文件”...

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2021-09-17
      • 1970-01-01
      • 2015-09-13
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2015-10-07
      相关资源
      最近更新 更多