Node.js Mongoose查询返回值,即使不期望返回值-使用时间截止

Node.js Mongoose查询返回值,即使不期望返回值-使用时间截止,node.js,database,mongodb,mongoose,Node.js,Database,Mongodb,Mongoose,我有一个Mongo实例的Mongoose查询,其中我有一个数据库,其中包含一组记录,我想在其中获取所有文档,其中“stripe.trialEnd”比当前时间早,但“stripe.isPaid”值为false。我编写了这个查询,它似乎根据isPaid值选择fine,但始终会为截止值选择一个值。我正在寻找如何使此查询正常工作 let cutoff = new Date(); Company.find({'stripe.trialEnd': {$lt: cutoff}, 'stripe.isPaid'

我有一个Mongo实例的Mongoose查询,其中我有一个数据库,其中包含一组记录,我想在其中获取所有文档,其中“stripe.trialEnd”比当前时间早,但“stripe.isPaid”值为false。我编写了这个查询,它似乎根据isPaid值选择fine,但始终会为截止值选择一个值。我正在寻找如何使此查询正常工作

let cutoff = new Date();
Company.find({'stripe.trialEnd': {$lt: cutoff}, 'stripe.isPaid': { '$in': ['false', false]} })
示例数据库文档

{
_id: <123abc>
   stripe: {
      isPaid: false,
      trialEnd: 1608943761 // Epoch time
   }
...
}

{
_身份证:
条纹:{
我说:错,
trialEnd:1608943761//大纪元时间
}
...
}

我模拟查询的类似帖子:

我想我解决了这个问题,所以mongoose没有将日期转换为历元时间,因此比较一直返回false并给出结果。我改变了创建日期的方式,给了我一个纪元时间,如下图所示,这似乎解决了问题

let cutoff = Date.now();

我想我解决了这个问题,所以mongoose没有将日期转换为大纪元时间,因此比较始终返回false并给出结果。我改变了创建日期的方式,给了我一个纪元时间,如下图所示,这似乎解决了问题

let cutoff = Date.now();