3

私はコレクション「会社」を持っています。このコレクションのすべてのオブジェクトには「lastcall」-paramがあります。これは単純な文字列であり、最後の呼び出しのUNIX時間を含みます。lastcallがANDより高く、bより低いすべて会社を見つけたいと思います。これどうやってするの?これが私が会社にアクセスするために使用するコードです:

//query to lastcall
collection.find( {'lastcall': a} , function (err, companies) {
    companies.each(function (err, company) {
        //do something with every object...
    });
});

このコードは、'lastcall' = Aであるすべての会社を返しますが、A <'lastcall' <Bであるすべての会社が必要です。これを行うにはどうすればよいですか?ありがとう!

4

2 に答える 2

8

高度なクエリのドキュメントには、まさに必要な例があります。

db.collection.find({ "field" : { $gt: value1, $lt: value2 } } );    // value1 < field < value
于 2012-06-17T06:46:11.170 に答える
3

...条件演算子<、<=、>、> =、および!=は、クエリオブジェクト形式でサポートされていないため、直接使用できませんが、エイリアス$ lt、$ lte、$で同じことが実現できます。 gt、$gteおよび$ne。フィールド値が条件と一致する必要がある場合、値は別のオブジェクトにラップする必要があります。

{"fieldname":{$gte:100}}
于 2012-06-17T06:46:00.553 に答える