
SolrQuery::getSortFields 메소드를 사용하여 정렬 필드를 가져올 때, 여러 필드를 정렬하는 경우 엘라스틱서치(Solr)는 기본적으로 오름차순으로 정렬합니다.
예를 들어, $query->getSortFields() -> addFields(array('field1', 'field2')); 이 경우, 엘라스틱서치(Solr)는 'field1' 필드에 따라 오름차순으로 정렬하고, 'field1' 필드가 동일한 경우 'field2' 필드에 따라 오름차순으로 정렬합니다.
한 필드가 우선순위가 더 높은 경우, 우선순위가 높은 필드는 먼저 정렬됩니다. 예를 들어, $query->getSortFields() -> addFields(array('field1', 'field2')); 이 경우, 엘라스틱서치(Solr)는 'field1' 필드에 따라 오름차순으로 정렬하고, 'field1' 필드가 동일한 경우 'field2' 필드에 따라 오름차순으로 정렬합니다.
만약 한 필드가 우선순위가 더 높은 경우, 우선순위가 높은 필드를 먼저 정렬하고, 그 다음에 우선순위가 낮은 필드를 정렬합니다. 예를 들어, $query->getSortFields() -> addFields(array('field1', 'field2')); 이 경우, 엘라스틱서치(Solr)는 'field1' 필드에 따라 오름차순으로 정렬하고, 'field1' 필드가 동일한 경우 'field2' 필드에 따라 오름차순으로 정렬합니다.
엘라스틱서치(Solr)에서 정렬 우선순위를 지정하려면, sort 파라미터를 사용하여 우선순위를 지정할 수 있습니다. 예를 들어, $query->getSortFields() -> addFields(array('field1 desc', 'field2 asc')); 이 경우, 엘라스틱서치(Solr)는 'field1' 필드에 따라 내림차순으로 정렬하고, 'field1' 필드가 동일한 경우 'field2' 필드에 따라 오름차순으로 정렬합니다.
2025-07-09 13:32