JugglingDB MongoDB ID数组

时间:2013-09-25 08:47:38

标签: mongodb jugglingdb

我正在使用Juggling-DB的MongoDB适配器。

如何运行以下SQL查询的等价物(ID是假的)

SELECT * FROM APPS
WHERE
    active = 1
    AND (
        user_id = '12345'
        OR
        id IN ('456', '789', '012')
    )

即“活跃应用,属于给定用户或可供所有使用。”

我尝试了以下内容:

{
    where: {
        active: true,
        or: [
            {
                user_id: '12345'
            },
            {
                _id: {
                    in: ['456', '789', '012']
                }
            }
        ]
    }
}

但它什么也没有回报。看一下源代码我的猜测是,当MongoDB.ObjectID是单个字符串而不是数组时,它只会将字符串转换为_id

1 个答案:

答案 0 :(得分:0)

mongodb查询应该是:

db.apps.find({active: true, "$or": [{"user_id": "12345"}, {"_id": { $in: ['1', '2', '3']}}]})