我在Meteor中为一个项目做一个搜索系统,需要在两个日期之间进行搜索.但是,日期在MongoDB的数组中:
"relatorios" : [
{
"mes" : ISODate("2013-11-01T02:00:00Z"),
"revistas" : "2",
"brochuras" : "2",
"livros" : "0",
"folhetos" : "0",
"revisitas" : "0",
"estudos" : "0",
"horas" : "12"
},
{
"mes" : ISODate("2013-09-01T03:00:00Z"),
"revistas" : "0",
"brochuras" : "0",
"livros" : "0",
"folhetos" : "0",
"revisitas" : "0",
"estudos" : "0",
"horas" : "12"
}
]
Run Code Online (Sandbox Code Playgroud)
我试图直接通过mongo查询过滤日期,但不能.我在一些论坛上读过有关在Meteor中使用MapReduce的内容.什么是最好的选择?如果可能的话,我该怎么办?
Aks*_*hat 11
您可以使用点表示法,例如a和b之间的两个日期
var start = new Date(450000);
var end = new Date(5450000000000);
CollectionName.find({ 'relatorios.mes' : { $gte : start, $lt: end });
Run Code Online (Sandbox Code Playgroud)
因此,这将获得具有与该字段匹配的数组的所有文档.记住mongodb提取文档,所以如果你只有一个匹配的数组,它会给你整个文档.
| 归档时间: |
|
| 查看次数: |
6045 次 |
| 最近记录: |