다음 조건에 대해 고유 한 색인 @ mongoDB 생성을 도와 줄 수 있습니까?MongoDB의 고유 인덱스
는이 같은 스키마가 있다고 가정하고, 나는 3. "switches.name"4. "switches.value"
{
"path": "somepath",
"verb": "GET",
"switches": [
{
"name": "id",
"value":"123"
},
{
"name": "age",
"value":"25"
}
]
}
그래서 나는 경우 1.path 2.verb의 고유 복합 인덱스를 원하는 내가 중복 오류가 발생한다
{
"path": "somepath",
"verb": "GET",
"switches": [
{
"name": "id",
"value":"123"
},
{
"name": "age",
"value":"25"
}
]
}
를 삽입하려고하지만, 나는 삽입하는 경우
{
"path": "somepath",
"verb": "GET",
"switches": [
{
"name": "id",
"value":"123"
},
{
"name": "age",
"value":"24"
}
]
}
또는
오류가 발생하지 않습니다.
기본적으로 별개의 배열 "스위치"가있는 문서를 삽입 할 수 있어야합니다.
그러나 옵션에서 요소의 순서를 변경하면이 실패 "옵션"[ { "이름": "나이", "값": "25" }, { " 이름 ":"id ", "값 ":"123 " } ] 중복 오류가 발생하지 않습니다. – Abhijeet
MongoDB 임베디드 문서 인덱스는 임베디드 문서 쿼리와 동일하게 작동합니다. 즉, 정확히 일치해야하고 필드 순서가 중요합니다. 멀티 키 인덱스가 작동하는 방식에 대한 사실을 추가하십시오. 필드 순서가 보장되지 않는다면 MongoDB 자체만으로는 유일성을 보장 할 수없는 것 같습니다. – kazenorin