2014-02-20 43 views
0

如何編寫和或在mongoDb中的相同查詢? 說如果我想在mongoDb中寫下面的查詢,我該怎麼做。如何在mongoDb中編寫和/或在同一個查詢中?

select * from emp where (empid > 200 and dept_id=5) or dept_id <=4; 

如果集合包含下面列約對比查詢operters here

emp_id,emp_name,dept_id,sal 
+0

我就** **強烈建議你花一些時間,通過這個頁面去:http://docs.mongodb.org/manual/reference/sql-comparison/ –

回答

1
db.emp.find({$or: [{$and: [{emp_id: {$gt: 200}}, {dept_id: 5}]}, {dept_id: {$lte: 4}}]}) 

讀取文件,並邏輯查詢則算here

+0

$和將被認爲是多餘的,因此不需要 – Sammaye

0

試試這個:

db.coll.find({ 
    $or: [ 
     { 
      $and: [ 
       { 
        emp_id: { $gt: 200 }, 
       }, 
       { 
        dept_id: 5 
       } 
      ] 
     }, 
     { 
      dept_id: { $lte: 4 } 
     } 
    ] 
}) 

或更容易(在這種情況下):

db.coll.find({ 
    $or: [ 
     { 
      emp_id: { $gt: 200 }, 
      dept_id: 5 
     } 
     { 
      dept_id: { $lte: 4 } 
     } 
    ] 
}) 
相關問題