Mongo查询给出意想不到的结果

时间:2012-05-04 22:47:23

标签: mongodb mongodb-query

有人能告诉我为什么这个查询会返回此记录吗?

查询:

db.sales.findOne({"qualified": true, created_at: {$gte:1334534400}, campaign: {$exists:1}})

记录:

{
        "_id" : ObjectId("4f8b6ef8da45bb3e600001fe"),
        "grand_total" : 9.99,
        "order_id" : "T003974723",
        "items" : [
                {
                        "price" : 9.99,
                        "id" : "23958754",
                        "name" : "UO Daisy Sunglasses",
                        "qty" : 1
                }
        ],
        "created_at" : 1334537675,
        "visitor_id" : "1332652531389",
        "unique_session_id" : "i-0f7e196e-110800",
        "session_id" : "i-0f7e196e-110800",
        "qualified" : true,
        "needler_id" : 357,
        "ip_address" : "76.103.214.29",
        "in_session" : true
}

我想到我要求mongo给我一张记录,其中“竞选”是一个财产。但是,正如您所看到的,此记录没有名为“广告系列”的属性

1 个答案:

答案 0 :(得分:1)

您使用的是哪个版本的mongodb?显然使用 $ exists:1 (而不是 $ exists:true 仅支持从v1.9开始:

https://jira.mongodb.org/browse/SERVER-2322