admin管理员组

文章数量:1328037

I'm developing an app with mongoose to access MongoDB.

And what I'm trying to achieve is to make a query and discar some documents by id.

User.find({})
    .where('price').lt(upperLimit)
    ....
    .exec(function(err, users) {
      //
    });

The point is I want to discard some users that I know before doing the query. Any ideas?. I don't want to post-process users collections and filter.

Thanks!

I'm developing an app with mongoose to access MongoDB.

And what I'm trying to achieve is to make a query and discar some documents by id.

User.find({})
    .where('price').lt(upperLimit)
    ....
    .exec(function(err, users) {
      //
    });

The point is I want to discard some users that I know before doing the query. Any ideas?. I don't want to post-process users collections and filter.

Thanks!

Share Improve this question asked Mar 13, 2013 at 13:11 Javier ManzanoJavier Manzano 4,83116 gold badges59 silver badges90 bronze badges
Add a ment  | 

2 Answers 2

Reset to default 3

You can use the $nin operator to exclude an array of _id values:

User.find({})
  .where('price').lt(upperLimit)
  .nin('_id', idsToExclude)
  ....
  .exec(function(err, users) {
    //
  });

You could use the $ne operator:

User.find({"_id":{"$ne":<IdToExclude>}}). …

本文标签: javascriptFiltering query results with mongoose on nodejsStack Overflow