
SolrQuery::getFacetMethod 함수는 Solr의 facet 기능을 설정하는 데 사용됩니다. 지원하는 facet method의 종류는 다음과 같습니다.
- enum: facet.method에 "enum"을 설정하면, facet 필드에 있는 고유한 값의 목록을 반환합니다. 예를 들어, facet 필드가 "색상"이고 facet 필드에 "빨강", "파랑", "초록"이 포함되어 있다면, facet.method에 "enum"을 설정하면 "빨강", "파랑", "초록" 목록이 반환됩니다.
- pivot: facet.method에 "pivot"을 설정하면, facet 필드에 있는 값의 조합을 반환합니다. 예를 들어, facet 필드가 "색상"이고 facet 필드에 "빨강", "파랑", "초록"이 포함되어 있다면, facet.method에 "pivot"을 설정하면 "빨강-파랑", "빨강-초록", "파랑-초록"과 같은 조합이 반환됩니다.
- range: facet.method에 "range"을 설정하면, facet 필드의 값의 범위를 반환합니다. 예를 들어, facet 필드가 "나이"이고 facet 필드에 10, 20, 30, 40, 50이 포함되어 있다면, facet.method에 "range"을 설정하면 "10-20", "20-30", "30-40", "40-50"과 같은 범위가 반환됩니다.
facet.method에 "range"을 설정할 때, 옵션으로 다음과 같은 값을 설정할 수 있습니다.
- facet.range.gap: facet 필드의 값 사이의 간격을 설정합니다. 예를 들어, facet.range.gap을 10으로 설정하면, facet 필드의 값은 10의 배수만 반환됩니다.
- facet.range.start: facet 필드의 시작 값을 설정합니다. 예를 들어, facet.range.start을 20으로 설정하면, facet 필드의 값은 20부터 반환됩니다.
- facet.range.end: facet 필드의 끝 값을 설정합니다. 예를 들어, facet.range.end를 40으로 설정하면, facet 필드의 값은 40까지 반환됩니다.
2025-04-29 10:08