Partial indexes in mongodb / mongoose

前端 未结 3 1148
暗喜
暗喜 2020-12-20 17:41

In the sparse index documentation I found note about mongodb 3.2 partial indexes

Changed in version 3.2: Starting in MongoDB 3.2, MongoDB provides the

相关标签:
3条回答
  • 2020-12-20 18:05

    In the current Mongoose version 4.3.7 you cannot define partial indexes in the scheme, but you can still use Partial Indexes of MongoDB 3.2.

    You just have to create the indexes using the native driver.

    // ScheduleModel is a Mongoose Model
    ScheduleModel.collection.createIndex({"type" : 1 } , {background:true , partialFilterExpression : { type :"g" }} , function(err , result){
         console.log(err , result);
    });
    

    After that, every query that matches the partialFilterExpression will be indexed.

    0 讨论(0)
  • 2020-12-20 18:11

    Now it's possible natively with Mongoose +4.6.1

    Book.index({user: 1, author: 1, complete: 1}, {unique: true, partialFilterExpression: {complete: true}});
    
    0 讨论(0)
  • 2020-12-20 18:19

    For Mongoid users:

    index(
      { user_id: 1, author_id: 1, complete: 1 },
      background: true,
      partial_filter_expression:
        {
          complete: { :$eq => true }
        }
    )
    

    Couldn't find any docs, but this PR.

    0 讨论(0)
提交回复
热议问题