【问题标题】:Querying with mongoose and dates用猫鼬和日期查询
【发布时间】:2013-07-07 10:56:57
【问题描述】:

我正在尝试了解如何使用 mongoose 进行特定查询。 我在 mongodb 中有这样的东西:

{ "_id" : 1, "modificationDate" : ISODate("2013-06-26T18:57:30.012Z") }
{ "_id" : 2, "modificationDate" : ISODate("2013-06-26T18:57:35.012Z") }

我想获取所有实际日期和修改日期相差大于5天的对象。

【问题讨论】:

    标签: node.js mongodb mongoose


    【解决方案1】:

    计算 5 天前的截止时间,然后使用 $lt 运算符和计算的截止时间执行 find:

    var cutoff = new Date();
    cutoff.setDate(cutoff.getDate()-5);
    MyModel.find({modificationDate: {$lt: cutoff}}, function (err, docs) { ... });
    

    【讨论】:

    【解决方案2】:

    如果您需要在两个日期之间查询,您可以使用 $gte = 大于等于和 $lte = 小于等于日期格式“YYYY-MM-DD”进行查询

    const results = await MyModel.find(
      {
        date: {
          $gte: "2021-01-20",
          $lte: "2021-02-15",
        }
      }
    )
    

    此示例将在 2021 年 1 月 20 日至 2021 年 2 月 15 日期间查询 MyModel。

    参考:https://mongoosejs.com/docs/tutorials/dates.html

    【讨论】:

      猜你喜欢
      • 2017-03-12
      • 1970-01-01
      • 1970-01-01
      • 2021-01-14
      • 2014-07-14
      • 2014-10-22
      • 2012-02-03
      • 1970-01-01
      • 2012-02-17
      相关资源
      最近更新 更多