Solr: запрос и возврат х количество типов - PullRequest
0 голосов
/ 15 октября 2011

У меня большой индекс файлов. Одно из полей, которые у меня есть, это "content_type". В этом поле хранится базовый тип файла (например, PDF, изображение, видео, документ, электронная таблица и т. Д.).

Я выполняю поиск по именам файлов (мое поле "title"). Как я могу структурировать запрос так, чтобы он возвращал только определенное количество каждого типа?

Например, скажем, у меня есть 1000 файлов со словом «работа» в заголовке. Я хочу выполнить поиск "работа" в заголовке, но я хочу, чтобы 5 результатов из каждого "content_type" возвращались первыми. (при условии, что каждый конкретный тип содержимого имеет 5 или более элементов). Так что на моей странице результатов поиска я могу сказать:

1 000 предметов было найдено для "работы"

Затем я начинаю перечислять список, по 5 для каждого типа.

Может кто-нибудь помочь мне построить запрос, который будет делать это? Я довольно новичок в Solr, но я надеюсь, что это можно сделать.

1 Ответ

1 голос
/ 15 октября 2011

Похоже, что в основном вы хотите ограничить и сгруппировать результаты по типу контента.

Проверьте Поле Solr Функция свертывания и группировки

Это поможет вам сгруппироватьрезультаты для каждого типа содержимого с использованием group.field = content_type
Количество результатов в группе может быть ограничено group.limit = 5 Полный список параметров см. по ссылке выше.

И выможно использовать обычные параметры запроса для поиска результатов, т.е. q = work

Эта функция доступна только в сборке Solr 3.3.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...