【问题标题】:MongoDB : Time comparisonMongoDB:时间比较
【发布时间】:2015-12-12 19:46:57
【问题描述】:

我在 MongoDB 集合中有一个字段 startTime,它以以下形式存储时间:

2015-07-22 08:19:04.652Z

我想查找所有startTime 大于或等于昨天时间(从前一天开始)的文档。我尝试在查找查询中使用 $currentDate,但无法使其正常工作。

编辑: 示例文件:

{
        "_id" : ObjectId("55af5241e4b0ec7c53360333"),
        "startTime" : ISODate("2015-08-22T08:19:04.652Z"),
        "sampleId" : "SS10"
}

编辑 2:不允许聚合框架。

【问题讨论】:

  • 不,你不能使用$currentDate 我认为聚合可以在这里工作。您可以编辑您的帖子并添加示例文档吗?
  • 我需要在没有聚合的情况下进行。可能吗?假设文档只有这个字段。我不明白示例文档有什么帮助。
  • 您想要恰好提前一天还是至少提前一天?
  • 我需要所有 startTime 大于或等于昨天时间的文档。我为我的问题中的错误道歉。我会更新的。

标签: mongodb


【解决方案1】:

首先计算上一个日期,然后将其传递给查找查询。

在javascript中:

var date = new Date();
date.setDate(date.getDate() - 1);
db.col.find({'startTime':{'$gte':date}})

【讨论】:

  • 嗨 Arun,我正在尝试在没有聚合框架的情况下执行此操作。
  • 哦...然后首先计算最后一天的日期并将其传递给 $gt 查找查询
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 2011-01-19
  • 1970-01-01
  • 1970-01-01
  • 2012-12-29
  • 1970-01-01
  • 2012-03-26
相关资源
最近更新 更多