2016-05-26 4 views
0

MongoDBをちょうど始めましょう - $or$andを1つのステートメントに含めることは可能ですか?私は2つのフィールドverifiedflagged等しい偽を確認したいしかし

find(
{$or: [{tags : {$in: ["test", "output"]}}, {$text:{$search: "test" }} ]}, 
{_id:0, publicID: 1, story:1} 
) 

だから気圧、私は、次の検索文を持っています。

は、だから私は私が行うことはできません参照してください。私をリード

find(
{$or: [{tags : {$in: ["test", "output"]}}, {$text:{$search: "test" }} ]}, 
{$and: [{verified : false}, {$flagged : false } ] }, 
{_id:0, publicID: 1, story:1} 
) 

iがaggregateを使用する必要がなく、1つのステートメントで$or$andを行う方法がわからないと思いますし。

助けてください。

ありがとうございました。

答えて

3

私はこれまでにこれまでに答えられていると信じていますが、$や$や$を含むMongoDBの論理クエリ演算子を組み合わせることはできます。

find({ 
    $and : [ 
     { $or : [ 
      { tags : { $in: ["test", "output"] } }, 
      { $text : { $search : "test" } } 
     ]}, 
     { verified : false }, 
     { flagged : false } 
    ]}, 
    { _id:0, publicID : 1, story : 1 } 
); 
+0

感謝を - そして私はその私ができるちょうど同じ使用を前提と '' $ aggregate' match'文で:あなたの例で

あなたは何ができますか? – userMod2

+0

Yeh、 '$ match'文でも同じことが言えます – CodeMan

関連する問題