我正在使用apache Solr搜索我的数据库.. !!
假设我已经从我的一个表中索引了4列.. !! ..我只是想要只返回包含我的查询词的那些列作为响应.. !! ..是可能的.. ??
例如 :
我有一个带列的桌车:名字,displayName,描述,额外 .. !!
现在我进行查询,例如:
localhost:8983/solr/select?q=maruti&wt=json
Run Code Online (Sandbox Code Playgroud)
现在有些行中只有名称 可能包含" maruti " 这个词
所以,作为回报,我只想要名称(以及其他一些固定字段,如ID)..
同样,如果描述包含这个词,那么只应该返回描述 ..而不是其他列.. !!
我怎么能实现这个.. ??
您可以使用Solr 4和自定义变换器执行此操作 - 我对文档的阅读似乎表明了这一点.但我认为这将是一项相当多的工作.最终,您可能必须编写前端过滤器,但对于复杂查询而言,这将很困难.
更新:以下是在没有自定义变换器等的情况下在Solr中执行此操作的方法.为所有四列启用突出显示:
hl=on&hl.fl=name,displayName,description,extra
Run Code Online (Sandbox Code Playgroud)
Solr将返回一个"突出显示"结构,其中包含与查询匹配的键和字段.您还将获得突出显示的片段,无论您使用它们都取决于您.请参阅此处了解更多参数:http://wiki.apache.org/solr/HighlightingParameters
| 归档时间: |
|
| 查看次数: |
2687 次 |
| 最近记录: |