Warning: file_get_contents(/data/phpspider/zhask/data//catemap/6/mongodb/13.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Mongodb 指定集合的开始日期和结束日期之间的Mongoose查询_Mongodb_Mongoose - Fatal编程技术网

Mongodb 指定集合的开始日期和结束日期之间的Mongoose查询

Mongodb 指定集合的开始日期和结束日期之间的Mongoose查询,mongodb,mongoose,Mongodb,Mongoose,我有以下收藏: db.sponsoreds.insert([ { _id: 1, bannerPath: "dms1.jpg", startDate: new Date("December 12, 2015 12:00:00"), endDate: new Date("November 13, 2016 00:00:00") }, { _id: 2, bannerPath: "dms2.jpg", startDate: new Date("

我有以下收藏:

db.sponsoreds.insert([
{
    _id: 1,
    bannerPath: "dms1.jpg",
    startDate: new Date("December 12, 2015 12:00:00"),
    endDate: new Date("November 13, 2016 00:00:00")
},
{
    _id: 2,
    bannerPath: "dms2.jpg",
    startDate: new Date("January 12, 2015 12:00:00"),
    endDate: new Date("January 13, 2016 00:00:00")
},
{
    _id: 3,
    bannerPath: "dms3.jpg",
    startDate: new Date("November 12, 2017 12:00:00"),
    endDate: new Date("November 13, 2018 00:00:00")
 },
 {
 _id: 4,
 bannerPath: "grs1.jpg",
 startDate: new Date("February 01, 2016 12:00:00"),
 endDate: new Date("February 28, 2016 00:00:00")
}
])
如何查询今天介于开始日期和结束日期之间的文档

编辑:这不是建议的“已问问题”的重复,因为:

我问的是今天是否在文档中的两个日期之间,而不是文档中的一个日期是否在两个日期之间

db.sponsoreds.find({$and:[{startDate:{$lte:new Date()}},{endDate:{$gte:new Date()}}]})
会回来的

{
        "_id" : 1,
        "bannerPath" : "dms1.jpg",
        "startDate" : ISODate("2015-12-12T17:00:00Z"),
        "endDate" : ISODate("2016-11-13T05:00:00Z")
}

当今天在2016-02-01T10:01:41.539Z运行时,@BlakesSeven的可能重复不是重复,因为我问的是今天是否在文档中的两个日期之间,而您建议的重复是问文档中的一个日期是否在两个日期之间。但您接受的答案使用的逻辑与指定的完全相同。还要注意,
$和
不是必需的,因为所有MongoDB查询条件都已经是“和”条件。所以“一个字段”或“两个字段”并不重要。重点是“使用范围运算符”。@BlakesSeven谢谢你的解释,你能不能也发布你的答案,这样其他人和我都能从中受益?