我将时间序列数据存储在mongodb数据库中,其中一个字段是ISODate对象。我正在尝试检索ISODate对象的分钟和秒值为零的所有项目。也就是说,所有在圆形小时都有时间戳的对象。
有没有办法做到这一点,或者我是否需要直接创建小时,分钟,秒和查询的单独字段,例如find({“minute”:0,“second”:0 })?
谢谢!
答案 0 :(得分:5)
你可以像@Devesh所说的那样做,或者如果它更合适你可以使用聚合框架:
db.col.aggregate([
{$project: {_id:1, date: {mins: {$minute: '$dateField'}, secs: {$second: '$dateField'}}}},
{$match: {mins: 0, secs: 0}}
]);
喜欢这样。
答案 1 :(得分:1)
您是否可以在集合中添加另一列,仅包含没有分钟和秒的日期时间。它将使您的查询更快速,更易于使用。它将是datetime列,没有分钟和秒部分
答案 2 :(得分:0)