2013-09-25 36 views
1

我正在使用Juggling-DB的MongoDB適配器。JugglingDB MongoDB ID數組

如何運行下面的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是單個字符串,而不是數組。

回答

0

MongoDB的查詢應該是這樣的:

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

是的,但我感興趣的是如何把它寫在雜耍-DB。 – xaxa

+0

您可以嘗試在「或」和「在」之前添加「$符號」嗎? – viktortnk

+0

它沒有幫助 – xaxa