查询中的Mongodb或运算符

时间:2014-02-26 03:05:16

标签: mongodb

我的查询如下。

    Post.native(function(err, collection) {

        collection.find({
            $or: [ { id :id }, { parentid : id} ]
        },  function(err, result) {
            if (err)
                console.log({error: err});
            console.log(result);
        });
    });

但是这会返回零结果,即使我有一个结果满足{id:id}并且两个结果满足{parentid:id}。我需要打印三个结果。

如果我的查询错误,请纠正我。任何帮助将不胜感激。

请帮忙。非常感谢

1 个答案:

答案 0 :(得分:1)

以下是我要调试此问题的一些最常见的事情。

如果您使用本机驱动程序,并且您要查询的字段是MongoIds,则需要确保id是ObjectId的实例,即

id = new mongo.ObjectID(id)

此外,mongodb本身将其ID存储为_id。您是否专门创建了id字段?