라이브러리

[PHP] SolrQuery::getGroupSortFields - group.sort 값을 반환합니다.




PHP 에서 SolrQuery::getGroupSortFields


SolrQuery::getGroupSortFields는 SolrQuery 클래스의 메서드로, 그룹 필드의 정렬 필드를 가져올 수 있습니다. 이 메서드는 Solr 쿼리에서 그룹 필드를 정렬하는 방법을 제어하는 데 사용됩니다.

사용법


#hostingforum.kr
php

use SolariumQueryTypeQueryQuery;

use SolariumQueryTypeQueryFilterQuery;

use SolariumQueryTypeQueryFilterFilter;

use SolariumQueryTypeQueryFilterGroupQuery;



// Solr 인스턴스 생성

$solr = new SolariumClient($config);



// 쿼리 생성

$query = $solr->createQuery();

$query->setQuery('example');

$query->setFacetFields(array('facet_field'));

$query->setGroupFields(array('group_field'));

$query->addGroupSortFields(array('group_field_sort')); // 그룹 필드 정렬 필드 추가



예제


# 그룹 필드 정렬 필드 추가


#hostingforum.kr
php

use SolariumQueryTypeQueryQuery;

use SolariumQueryTypeQueryFilterQuery;

use SolariumQueryTypeQueryFilterFilter;

use SolariumQueryTypeQueryFilterGroupQuery;



// Solr 인스턴스 생성

$config = array(

    'url' => 'http://localhost:8983/solr',

    'username' => 'solr',

    'password' => 'solr',

);

$solr = new SolariumClient($config);



// 쿼리 생성

$query = $solr->createQuery();

$query->setQuery('example');

$query->setFacetFields(array('facet_field'));

$query->setGroupFields(array('group_field'));

$query->addGroupSortFields(array('group_field_sort')); // 그룹 필드 정렬 필드 추가



// 쿼리 실행

$result = $solr->select($query);



// 결과 출력

foreach ($result->getGroups() as $group) {

    echo $group->getFieldValue() . "
";

    foreach ($group->getValues() as $value) {

        echo $value->getFieldValue() . "
";

    }

}



# 그룹 필드 정렬 필드 추가 (정렬 순서)


#hostingforum.kr
php

use SolariumQueryTypeQueryQuery;

use SolariumQueryTypeQueryFilterQuery;

use SolariumQueryTypeQueryFilterFilter;

use SolariumQueryTypeQueryFilterGroupQuery;



// Solr 인스턴스 생성

$config = array(

    'url' => 'http://localhost:8983/solr',

    'username' => 'solr',

    'password' => 'solr',

);

$solr = new SolariumClient($config);



// 쿼리 생성

$query = $solr->createQuery();

$query->setQuery('example');

$query->setFacetFields(array('facet_field'));

$query->setGroupFields(array('group_field'));

$query->addGroupSortFields(array('group_field_sort', 'group_field_sort2')); // 그룹 필드 정렬 필드 추가

$query->addGroupSortFields(array('asc')); // 정렬 순서 추가

$query->addGroupSortFields(array('desc')); // 정렬 순서 추가



// 쿼리 실행

$result = $solr->select($query);



// 결과 출력

foreach ($result->getGroups() as $group) {

    echo $group->getFieldValue() . "
";

    foreach ($group->getValues() as $value) {

        echo $value->getFieldValue() . "
";

    }

}



참고


* [Solarium](https://github.com/solariumphp/solarium)
* [SolrQuery::getGroupSortFields](https://solariumphp.org/docs/6.x/api/Solarium/Query/Query.html#method_getGroupSortFields)
  • profile_image
    나우호스팅 @pcs8404 

    호스팅포럼 화이팅!

    댓글목록

    등록된 댓글이 없습니다.

  • 전체 8,985건 / 158 페이지

검색

게시물 검색