라이브러리
[PHP] SolrQuery::addFilterQuery - 필터 쿼리를 지정합니다.
PHP에서 SolrQuery::addFilterQuery 사용하기
SolrQuery::addFilterQuery는 SolrQuery 클래스의 메서드 중 하나로, 필터 쿼리를 추가하는 데 사용됩니다. 필터 쿼리는 검색 결과를 필터링하는 데 사용되는 쿼리입니다. 예를 들어, 특정 카테고리, 가격 범위, 또는 특정 날짜의 문서만 검색하고 싶을 때 사용할 수 있습니다.
예제
아래 예제에서는 SolrQuery::addFilterQuery를 사용하여 특정 카테고리와 가격 범위의 문서만 검색하는 방법을 보여줍니다.
#hostingforum.kr
php
require_once 'vendor/autoload.php';
use SolariumClient;
use SolariumQueryTypeQueryQuery;
// Solr 클라이언트 생성
$client = new Client([
'url' => 'http://localhost:8983/solr',
'username' => 'solr',
'password' => 'solr',
]);
// Solr 쿼리 생성
$query = $client->createSolrQuery()
->setQuery('*:*') // 모든 문서 검색
->addFilterQuery('category:전자제품') // 카테고리 필터 추가
->addFilterQuery('price:[100 TO 500]'); // 가격 필터 추가
// 쿼리 실행
$result = $client->query($query);
// 검색 결과 출력
foreach ($result->getDocuments() as $document) {
echo $document->id . "
";
}
필터 쿼리 유형
SolrQuery::addFilterQuery는 다양한 필터 쿼리 유형을 지원합니다. 예를 들어, 다음과 같은 필터 쿼리 유형이 있습니다.
* `category:전자제품` : 카테고리 필터
* `price:[100 TO 500]` : 가격 필터
* `date:[2020-01-01 TO 2020-12-31]` : 날짜 필터
* `author:john` : 저자 필터
필터 쿼리 옵션
필터 쿼리 옵션을 사용하여 필터 쿼리의 동작을 조절할 수 있습니다. 예를 들어, 다음과 같은 필터 쿼리 옵션이 있습니다.
* `fq` : 필터 쿼리 옵션 (기본값)
* `facet` : facet 옵션
* `facet.mincount` : facet 최소 카운트 옵션
#hostingforum.kr
php
$query = $client->createSolrQuery()
->setQuery('*:*')
->addFilterQuery('category:전자제품', 'fq') // 카테고리 필터 추가
->addFilterQuery('price:[100 TO 500]', 'facet') // 가격 필터 추가
->addFilterQuery('date:[2020-01-01 TO 2020-12-31]', 'facet.mincount', 10); // 날짜 필터 추가
결론
SolrQuery::addFilterQuery는 필터 쿼리를 추가하는 데 사용되는 메서드입니다. 필터 쿼리는 검색 결과를 필터링하는 데 사용됩니다. 예를 들어, 특정 카테고리, 가격 범위, 또는 특정 날짜의 문서만 검색하고 싶을 때 사용할 수 있습니다. 필터 쿼리 유형과 옵션을 사용하여 필터 쿼리의 동작을 조절할 수 있습니다.
-
- 나우호스팅 @pcs8404
-
호스팅포럼 화이팅!
댓글목록
등록된 댓글이 없습니다.