Mongoosejs에서 다중 필드 색인을 만드는 방법에 대한 문서를 찾으려고합니다. 특히 색인화되고 고유해야하는 두 개의 필드가 있습니다. 두 필드를 함께 인덱싱하는 몽구스 스키마의 예는 무엇입니까?
답변:
여기에 표시된대로 개체 에서 index
메서드를 호출하여 Schema
이를 수행합니다 . 귀하의 경우에는 다음과 같습니다.
mySchema.index({field1: 1, field2: 1}, {unique: true});
1
오름차순, -1
내림차순입니다.
index
.
1
및 -1
오름차순으로 또는 인덱스 필드 내림차순 인덱스 키를 지정한다. 나는 문서 http://mongodb.github.io/node-mongodb-native/2.1/tutorials/create-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"
..
..
}
}
예상대로 완벽하게 작동하는 샘플 데이터로 테스트했습니다.