mongo-go-driver를 사용하여 MongoDB 문서에서 필드 제외 예측
MongoDB 문서 내의 필드를 예측하면 다음을 제외한 특정 필드를 선택적으로 검색할 수 있습니다. 불필요하다고 판단되는 것. 이는 데이터 전송을 최소화하여 성능을 향상시키고 네트워크 트래픽을 줄일 수 있습니다.
mongo-go-driver는 findopt.Projection 옵션을 통해 필드 투영을 위한 유연한 메커니즘을 제공합니다. 그러나 성공적인 프로젝션을 보장하려면 특정 구현 세부 사항을 준수해야 합니다.
제공된 코드 샘플에서:
<br>opts = Append(opts, findopt.Projection(fields{</p> <div class="code" style="position:relative; padding:0px; margin:0px;"><pre class="brush:php;toolbar:false">_id: 0,
}))
필드 구조체 내에서 내보내지 않은 필드 이름(_id)을 사용하면 문제가 발생합니다. 내보내지 않은 필드는 mongo-go-driver를 포함한 다른 패키지에서 액세스할 수 없습니다. 이 문제를 해결하려면:
필드 이름 내보내기: 대문자(예: ID)로 시작하는 필드 이름을 사용하고 구조체 태그를 사용하여 MongoDB 필드에 매핑합니다.
type fields struct { ID int `bson:"_id"` }
활용 bson.Document: 또는 프로젝션을 위해 bson.Document를 생성할 수 있습니다.
projection := bson.NewDocument( bson.EC.Int32("_id", 0), )
이제 프로젝션을 사용하여 쿼리를 수행할 수 있습니다.
projection := fields{ ID: 0, } result := staCon.collection.FindOne( nil, filter, options.FindOne().SetProjection(projection)).Decode(s)
다음을 사용하여 올바른 투영이 설정되었는지 확인하세요. options.FindOne().SetProjection().
이러한 지침을 준수하면 mongo-go-driver를 사용하여 효과적으로 필드를 투영하고 MongoDB 문서 검색 작업을 최적화할 수 있습니다.
위 내용은 mongo-go-driver를 사용하여 MongoDB에서 필드 제외를 올바르게 투영하는 방법은 무엇입니까?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!