2016-06-02 16 views
2

findメソッドに条件を渡す必要があります。しかし、比較演算子は!=です。 MongoDBでも可能ですか?私はdocsオペレータの中には、AND,OR&lt&gtのようなネゲート演算子を参照してください。 recordTypeは、Messageと等しくないすべてのレコードを取得する方法を知っていますか?MongoDBのレコードと一致しないレコードを検索します

collection.find({'recordType' : 'Message'}).toArray(function(err, results) { 
    // <-- need NOT EQUAL OPERATOR 
    }); 

答えて

2

$neが解決策です。

構文:{field: {$ne: value} }

$neは、フィールドの値が指定された値にnot equal (i.e. !=)ある文書を選択します。これには、フィールドが含まれていないドキュメントも含まれます。

collection.find({'recordType' : {'$ne' : 'Message'}}).toArray(function(err, results) 
{ 
    console.log(results); 
}); 

それを使用する方法を知ってdocを参照してください。

+0

'' $ ne''ではなく '$ ne''となります。 – Clijsters

+1

@Clijsters '$ ne'と同様に動作します。 – Shrabanee

+0

興味深い。チェックした[書籍](http://shop.oreilly.com/product/0636920028031.do)はあなたが正しいと言いますが[オンラインマニュアル](https://docs.mongodb.com/manual/reference/operator/ query-comparison /)は、周囲のマークのない演算子しか提供しません。古いバージョンでこれについて知られているものやそれは重要ではありませんか? – Clijsters

関連する問題