一尘不染

mongodb / mongoose中的部分索引

node.js

在稀疏索引文档中,我发现了有关mongodb 3.2部分索引的说明

在版本3.2中进行了更改:从MongoDB
3.2开始,MongoDB提供了创建部分索引的选项。部分索引提供了稀疏索引功能的超集。如果您使用的是MongoDB
3.2或更高版本,则应优先使用部分索引而不是稀疏索引。

部分索引非常有用,我想在项目中使用它们。可以和猫鼬一起使用吗?


阅读 264

收藏
2020-07-07

共1个答案

一尘不染

在当前的Mongoose版本4.3.7中,您无法在方案中定义部分索引,但仍可以使用MongoDB 3.2的部分索引。

您只需要使用本机驱动程序创建索引。

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

之后,每个与匹配的查询partialFilterExpression都将被索引。

2020-07-07