
SolrQuery::setFacetMethod 메소드는 facet 결과를 반환하는 방법을 지정하는 데 사용됩니다. facet method의 값은 다음과 같이 설명할 수 있습니다.
- 'enum': facet 필드의 모든 가능한 값이 facet 결과에 포함됩니다. 예를 들어, 'color' 필드에 'red', 'blue', 'green' 값이 있다면 facet 결과에는 'red', 'blue', 'green' 값이 모두 포함됩니다.
- 'query': facet 필드의 값에 대한 쿼리 결과가 facet 결과에 포함됩니다. 예를 들어, 'color' 필드에 'red' 값이 있고, 'red' 값에 대한 쿼리 결과가 'red' 제품이 10개, 'blue' 제품이 20개라면 facet 결과에는 'red' 제품 10개, 'blue' 제품 20개가 포함됩니다.
- 'range': facet 필드의 값에 대한 범위 결과가 facet 결과에 포함됩니다. 예를 들어, 'price' 필드에 10부터 100까지의 가격이 있다면 facet 결과에는 10-20, 21-30, ..., 91-100 범위가 포함됩니다.
- 'pivot': facet 필드의 값에 대한 피봇 결과가 facet 결과에 포함됩니다. 예를 들어, 'color' 필드에 'red', 'blue', 'green' 값이 있고, 'size' 필드에 'S', 'M', 'L' 값이 있다면 facet 결과에는 'red-S', 'red-M', 'red-L', 'blue-S', 'blue-M', 'blue-L', 'green-S', 'green-M', 'green-L' 값이 포함됩니다.
각 facet method의 값은 facet 결과를 반환하는 방법을 달리하므로, facet 필드의 특성에 따라 적절한 facet method의 값을 선택하여 facet 결과를 최적화할 수 있습니다.
2025-06-25 21:58