[mongodb] Mongoose / MongoDB에서 다중 필드 인덱스 생성

Mongoosejs에서 다중 필드 색인을 만드는 방법에 대한 문서를 찾으려고합니다. 특히 색인화되고 고유해야하는 두 개의 필드가 있습니다. 두 필드를 함께 인덱싱하는 몽구스 스키마의 예는 무엇입니까?



답변

여기에 표시된대로 개체 에서 index메서드를 호출하여 Schema이를 수행합니다 . 귀하의 경우에는 다음과 같습니다.

mySchema.index({field1: 1, field2: 1}, {unique: true});


답변

복합 인덱스를 만들 때는 스키마 수준에서 인덱스를 정의해야합니다.

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});

행복한 날!


답변

    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"
   ..
   ..

  }
}

예상대로 완벽하게 작동하는 샘플 데이터로 테스트했습니다.


답변