我试图根据两个日期过滤数据。问题是当月份不同时,它不会返回任何数据。
假设我试图过滤一周的数据,即从当天到7天前,日期应该是From27.03.2023 andto01.04.2023。现在它不返回任何数据,因为日期范围福尔斯在不同的月份之间,但是当我传递From27.03.2023 andto31.03时。2023年,它将返回记录。
另一个问题是它也不包括最后一天。就像它将返回直到30.03.2023的数据,而不是直到31.03.2023,即使结束日期是31.03.2023
我使用moment js获取日期,并使用以下代码获取日期。
const dateTo = moment().format(constants.DATE_FORMAT);
const dateFrom = moment().subtract(7, 'd').format(constants.DATE_FORMAT);
const list = (await db.collection(constants.COLLECTION_RECORDS)
.find({ "userId": req.body.userId, "date": {$gte:dateFrom, $lt:dateTo} })
.toArray()).reverse();
请指出此代码中的问题。谢谢。
1条答案
按热度按时间t3psigkw1#