获取 24 小时前的 X 条记录 Mongoose
Get X records from 24 hours ago Mongoose
我的项目基于 Hapi.js 和 Mongoose。我无法获取 24 小时前的 X 价格。
我通过这种方式获取最新添加的记录:
const pricesnow = await Prices.find({
currency_id: {
$in:
currencies[k].id
},
createdAt: {
$gt: new Date().getTime() - 1000 * 60 * 1
}
})
所以我认为我可以使用以下代码获取 24 小时前的 x 记录:
const prices24h = await Prices.find({
currency_id: {
$in:
currencies[k].id
},
createdAt: {
$gt: new Date().getTime() - 86400000,
$lt: new Date().getTime() - 86399999
}
})
但是即使数据库中有数据,24小时前的价格也没有return。
第二个代码仅在时间跨度在一小时内有效。
之后我将从 pricesnow 中减去 prices24h 来计算 24h 百分比。
提前感谢您的回答。
访问MongoDB: Only fetch documents created in the last 24hrs?
试试这个link希望它能帮到你
db.getCollection("COLLECTION_NAME").find({"createdAt":{$gt:new Date(Date.now() - 24*60*60 * 1000)}})
谢谢
您可以使用 limit
和 sort
函数以及 find
const pricesnow = await Prices.find({
currency_id: {
$in: [], // replace with currency array
},
createdAt: { $gt: new Date(Date.now() - 86400000) },
})
.sort({ createdAt: -1 })
.limit(10);
我的项目基于 Hapi.js 和 Mongoose。我无法获取 24 小时前的 X 价格。
我通过这种方式获取最新添加的记录:
const pricesnow = await Prices.find({
currency_id: {
$in:
currencies[k].id
},
createdAt: {
$gt: new Date().getTime() - 1000 * 60 * 1
}
})
所以我认为我可以使用以下代码获取 24 小时前的 x 记录:
const prices24h = await Prices.find({
currency_id: {
$in:
currencies[k].id
},
createdAt: {
$gt: new Date().getTime() - 86400000,
$lt: new Date().getTime() - 86399999
}
})
但是即使数据库中有数据,24小时前的价格也没有return。
第二个代码仅在时间跨度在一小时内有效。
之后我将从 pricesnow 中减去 prices24h 来计算 24h 百分比。
提前感谢您的回答。
访问MongoDB: Only fetch documents created in the last 24hrs?
试试这个link希望它能帮到你
db.getCollection("COLLECTION_NAME").find({"createdAt":{$gt:new Date(Date.now() - 24*60*60 * 1000)}})
谢谢
您可以使用 limit
和 sort
函数以及 find
const pricesnow = await Prices.find({
currency_id: {
$in: [], // replace with currency array
},
createdAt: { $gt: new Date(Date.now() - 86400000) },
})
.sort({ createdAt: -1 })
.limit(10);