我正在尝试寻找有关如何在Mongoosejs中创建多字段索引的文档,但无济于事。特别是我有两个字段需要索引并且是唯一的。将两个字段索引在一起的示例猫鼬模式是什么?
Answers:
您调用index
您的方法Schema
的对象要做到这一点,如图在这里。对于您的情况,它将类似于:
mySchema.index({field1: 1, field2: 1}, {unique: true});
1
正在上升,-1
将会下降。
index
。
1
and -1
specifies a ascending or a descending index key on the index field. I found docs http://mongodb.github.io/node-mongodb-native/2.1/tutorials/create-indexes/
Defining indexes at the schema level is necessary when creating compound indexes.
animalSchema.index({ name: 1, type: -1 });
顺便说一句,接受的答案是错误的,根据https://stackoverflow.com/a/52553550/129300,您应将字段名称用单引号引起来,即:
mySchema.index({'field1': 1, 'field2': 1}, {unique: true});
快乐的一天!
field1
并且field2
是有效的标识符。field1.foo
例如,不是。
Following command can be used to create compound index for nested json:
db.ACCOUNT_collection.createIndex({"account.id":1,"account.customerId":1},{unique:1})
Mongo json structure is like :
{"_id":"648738"
"account": {
"id": "123",
"customerId": 7879,
"name": "test"
..
..
}
}
我已经对示例数据进行了测试,它可以按预期正常运行。