我有一个主题集合。每个主题都可以评级。我对数据进行了非规范化处理,以便主题集合将最新评级的时间存储在“lastRated”中。
如何查询过去6小时内未评分的所有主题?
我的查询现在看起来像这样:
PUT /_cluster/settings
{
"persistent": {
"cluster.routing.allocation.disk.threshold_enabled": false
}
}
但是,当我在控制台中运行它时,我正在检索所有主题。
答案 0 :(得分:2)
尝试以这种方式设置小时数:
var date = new Date();
var beHereNow = new Date();
beHereNow.setHours(date.getHours() - 6);
console.log(beHereNow); // Fri May 08 2015 10:09:32 GMT+0100 (GMT Daylight Time)
Topics.find({ 'lastRating' : {$lte: beHereNow} });
或者更好的是,您可以使用 momentjs 库,尤其是subtract()
方法:
var beHereNow = moment().subtract(6, 'hours');
Topics.find({ 'lastRating' : {$lte: beHereNow} });