
SolrQuery::addFacetQuery 메소드는 facet 쿼리를 추가할 때, facet 필드와 쿼리 조건을 함께 지정합니다.
예시 코드에서 price와 category facet 쿼리가 동작하는 방식은 다음과 같습니다.
- price facet 쿼리는 price 필드를 기준으로 facet 결과를 반환합니다. price 필드는 모든 문서에 존재해야 하며, facet 결과는 price 필드의 모든 값에 대한 문서 수를 반환합니다.
- category facet 쿼리는 category 필드를 기준으로 facet 결과를 반환합니다. category 필드는 모든 문서에 존재해야 하며, facet 결과는 category 필드의 모든 값에 대한 문서 수를 반환합니다.
facet 쿼리가 여러 개일 때, Solr는 각 facet 쿼리를 별도로 처리하고 facet 결과를 반환합니다. 즉, price facet 쿼리와 category facet 쿼리는 독립적으로 동작하며, facet 결과는 각 쿼리에 대한 결과를 반환합니다.
예를 들어, price facet 쿼리가 price 필드의 10, 20, 30 등 다양한 값에 대한 문서 수를 반환하고, category facet 쿼리가 category 필드의 A, B, C 등 다양한 값에 대한 문서 수를 반환한다면, facet 결과는 다음과 같이 반환됩니다.
- price facet 결과: {10: 5, 20: 10, 30: 3}
- category facet 결과: {A: 20, B: 15, C: 5}
이러한 facet 결과는 facet 필드와 쿼리 조건에 따라 달라질 수 있습니다.
2025-08-16 15:11