我有以下查询续集
let regMonth = [];
let month = 1;
while (month < 13) {
const currMonth = await registrations.findAndCountAll({
attributes: ['id'],
where: {
createdAt: {
[Op.gte]: moment("0101", "MMDD").subtract((30 * month)-365, 'days').toDate()
}
}
})
regMonth.push(currMonth);
month++;
}
并且应该创建一个数组,其中包含在相应月份中创建的数据库记录的数量。它可以在某种程度上起作用,但结果数组如下所示:
[3,3,0,0,0,0,0,0,0,0,0,0]
但它应该返回
[0,3,0,0,0,0,0,0,0,0,0,0]
因为我只添加3
了2月和其他月份的记录。
我该如何解决此问题,或者还有另一种更有效的方法可以解决此问题,这可能使本年无关紧要。
感谢您的帮助。
createdAt: {
[Op.gte]: moment("0101", "MMDD").add(month-1, 'months').toDate(),
[Op.lt]: moment("0101", "MMDD").add(month, 'months').toDate(),
}
请记住,数据库中的created_at值与服务的当前时区之间的时差(如果有)。
本文收集自互联网,转载请注明来源。
如有侵权,请联系[email protected] 删除。
我来说两句