在我的一个收藏中,我删除了标记为垃圾的记录:true,现在我只能索引未标记为垃圾的记录。我应该在这里使用什么索引策略。
{
"_id" : ObjectId("5ad5eb0b9590e413debd81d6"),
"voucher" : ObjectId("5a731de8ffd6f75b1471742f"),
"brand" : ObjectId("58e3b1e1b473f74462d6c9b2"),
"code" : "6DZQ34KD",
"purchaseDate" : ISODate("2018-04-17T12:39:39.287Z"),
"owner" : ObjectId("5ac3460b8dd26664ab57cb66"),
"isInWishlist" : true,
"expiryDate" : ISODate("2018-04-30T20:59:59.000Z"),
"isUsed" : false,
"trash" : true,
"updatedAt" : ISODate("2018-04-17T12:39:39.800Z"),
"createdAt" : ISODate("2018-04-17T12:39:39.288Z"),
"__v" : 0
}
答案 0 :(得分:1)
您可以创建partial index。
E.g。使用"trash": false
brand
的{{1}}索引文档:
db.collection.createIndex(
{ brand: 1},
{ partialFilterExpression: { trash: false } }
)
请注意,没有trash
字段的文档也将从索引中排除。