Solr - 如何"分组"和"限制"?

Sta*_*bie 8 lucene indexing solr full-text-search

假设我从我的数据库中索引了以下内容:

======================================
| 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              |
...
Run Code Online (Sandbox Code Playgroud)

此外,假设用户搜索"hello",它应返回记录1,2和3.有没有办法让Solr"分组" Code字段并应用限制(例如,10条记录)?我有点想找到GROUP BY和LIMIT的SQL版本.

此外,当它执行"分组依据"时,我希望它选择最相关的文档,并将该文档的Description字段用作返回的一部分.

当然,我可以让Solr将所有内容都返回给我的应用程序,然后我可以操作结果来执行GROUP BY和LIMIT.如果可能的话,我宁愿不这样做.

Kar*_*son 12

看看Solr 4.0中提供的现场折叠.对相关性进行排序:group.sort=score desc.

  • Solr v3.3 +中也提供此功能 (6认同)