小编Ber*_*aia的帖子

在带有日期的数组中查询

我正在尝试在数组(“可用性”)中执行查询(在 MongoDB 中),该查询将返回元素(“可用”)等于 1 且在可用性内的日期之间的唯一酒店。

但是当正确返回“Mercato Hotel”时,查询返回所有酒店

我使用过但没有成功的查询:

{city: "Boston", availability: { $elemMatch: {availability: 1, date: {$gte: ISODate("2015-05-02T00:00:00.000+0000")}, date: {$lte: ISODate("2015-05-04T00:00:00.000+0000")}}}}
Run Code Online (Sandbox Code Playgroud)

MongoDb 中的 Json:

 { 
        "_id" : ObjectId("55b302ee8debdf1a908cdc85"), 
        "city" : "Boston", 
        "hotel" : "Mercatto Hotel", 
        "availability" : [
            {
                "date" : ISODate("2015-05-01T00:00:00.000+0000"), 
                "available" : NumberInt(0)
            }, 
            {
                "date" : ISODate("2015-05-02T00:00:00.000+0000"), 
                "available" : NumberInt(0)
            }, 
            {
                "date" : ISODate("2015-05-03T00:00:00.000+0000"), 
                "available" : NumberInt(0)
            }, 
            {
                "date" : ISODate("2015-05-04T00:00:00.000+0000"), 
                "available" : NumberInt(1)
            }
        ]
    }
    { 
        "_id" : ObjectId("55b302ee8debdf1a908cdc89"), 
        "city" : "Boston", 
        "hotel" …
Run Code Online (Sandbox Code Playgroud)

mongodb mongodb-query

6
推荐指数
1
解决办法
5470
查看次数

标签 统计

mongodb ×1

mongodb-query ×1