Solr - как «группировать по» и «ограничивать»?

Допустим, я проиндексировал следующее из своей базы данных:

======================================
| Id |  Code | Description           |
======================================
| 1  | A1    | Hello world           |
| 2  | A1    | Hello world 123       |
| 3  | A1    | World hello hi        |
| 4  | B1    | Quick fox jumped      |
| 5  | B1    | Lazy dog              |
...

Далее, скажем, пользователь ищет «привет», который должен вернуть записи 1, 2 и 3. Есть ли способ сделать Solr " сгруппировать по полю Код и применить ограничение (скажем, 10 записей)? Я в некоторой степени ищу SQL-аналог GROUP BY и LIMIT.

Кроме того, когда он выполняет эту «группировку по», я хочу, чтобы он выбрал наиболее подходящий документ и использовал поле этого документа Описание как часть возврата.

Конечно, я мог бы просто заставить Solr вернуть все в мое приложение, и я могу манипулировать результатами, чтобы выполнить GROUP BY и LIMIT. Я бы предпочел не делать этого, если возможно.

8
задан StackOverflowNewbie 29 November 2010 в 10:15
поделиться