Я пытаюсь найти документацию, но безрезультатно, как создавать многопольные индексы в Mongoosejs. В частности, у меня есть два поля, которые должны быть индексированы и уникальны. Каков пример схемы мангуста, которая индексирует два поля вместе?
93
1
по возрастанию, по-1
убыванию.index
.1
и-1
задает ключ индекса по возрастанию или по убыванию в поле индекса. Я нашел документы http://mongodb.github.io/node-mongodb-native/2.1/tutorials/create-indexes/Определение индексов на уровне схемы необходимо при создании составных индексов.
animalSchema.index({ name: 1, type: -1 });
Ссылка: http://mongoosejs.com/docs/guide.html#indexes
источник
Кстати, принятый ответ неверен, согласно 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" .. .. } }
Я проверил образцы данных, он отлично работает, как ожидалось.
источник