오늘 스택 오버플로에 흥미로운 질문이 올라왔습니다(https://stackoverflow.com/q/20083932/98509)의 올바른 사용법과 관련하여 startkey_docid. 이 질문은 사용자가 유효하지 않은 시작키 그리고 startkey_docid그러나 startkey_docid 보기에서 무시되는 것처럼 보였습니다. 뷰의 주요 사용 사례가 startkey_docid 는 보기 요청에 페이지 번호를 매길 수 있도록 허용하는 것입니다( https://www.couchbase.com/blog/pagination-couchbase) 를 전달하여 시작키 그리고 startkey_docid 를 사용하면 마지막 페이지의 마지막 문서와 일치하므로 여러 문서에서 동일한 키를 사용하는 경우 페이지 매김을 올바르게 할 수 있습니다. 올바른 사용법은 startkey_docid 가 가장 먼저 떠올랐기 때문에 지금이 앞으로의 동작에 대해 설명하기에 좋은 시기라고 생각했습니다.
다음은 기억해야 할 중요한 사항의 간단한 목록입니다. startkey_docid:
startkey_docid은 다음과 같은 경우 완전히 무시됩니다.시작키는 생략됩니다.startkey_docid를 지정한 경우에만 올바르게 작동합니다.시작키뷰에서 색인된 문서와 정확히 일치하는 문서입니다.startkey_docid는 결과의 문서 ID 중 하나와 정확히 일치해야 합니다.시작키. 일치하는 항목이 없으면 다음 키에서 결과가 시작됩니다.
프로 팁: 특정 항목에 대해 정확히 일치하는 행이 몇 개나 반환되는지 확인해야 하는 경우 시작키를 사용하여 먼저 보기 요청을 실행해 보십시오. 키 매개변수 대신 시작키.
추신: 의미는 다음과 같습니다. 끝키 그리고 endkey_docid 와 동일하게 동작합니다. 시작키 그리고 startkey_docid 여기에 지정된 대로.
건배, 브렛
브렛, 스택 오버플로우 예제에서는 이 세 가지 조건이 충족되고 처음 3개의 키가 동일합니다. 프로 팁을 사용해도 3개의 동일한 키가 반환되고 있습니다. 스택 오버 플로우에서 해당 사례가 3 가지 기준 중 하나를 충족하지 못하는 방법에 대해 답변해 주시겠습니까? 그런 것 같지만 누락된 세부 사항이 있을 수 있습니다.
스택오버플로 질문에서 시작키가 보기의 항목과 정확히 일치하지 않습니다. 이 경우 #2와 #3의 끝에서 언급했듯이 startkey_docid는 기본적으로 무시됩니다.
건배, 브렛
그 때문에 거의 하루를 허비했습니다. 이 기능을 문서에 추가하면 새로운 카우치베이스 사용자에게 큰 도움이 될 것입니다!
아무튼 감사합니다!
Fred
[...] 금주의 블로그: startkey_docid 동작 [...]