我有一个这样的架构
const appSchema = new mongoose.Schema({
email: String,
appId: {
type: String,
required: true
}
})
我与appUserSchema.index({ email: 1, appId: 1}, { unique: true, sparse: true });
.
如果我想要多个email
为空(匿名用户)怎么办?email
由于上述限制,目前我只能有一个空条目。
您可以partialFilterExpression
在此处使用选项。(mongo docs)
您可以按如下方式创建索引:
appUserSchema.index({ email: 1, appId: 1}, { partialFilterExpression: { email: { $exists: true } }, unique: true});
您应该删除 sparse 选项,因为它与部分索引不兼容。如果电子邮件存在,它仅在此处创建复合索引。
本文收集自互联网,转载请注明来源。
如有侵权,请联系 [email protected] 删除。
我来说两句