首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >在Solrj中设置伪字段(fl)

在Solrj中设置伪字段(fl)
EN

Stack Overflow用户
提问于 2014-02-25 22:46:54
回答 1查看 2.6K关注 0票数 0

我想使用一个伪字段来返回距我的solr (geo)空间搜索中心的距离,就像这里解释的那样:function,当它说:

返回距离 Solr4.0 通过向请求添加fl=geodist(),您可以使用伪字段特性返回每个文档的距离以及存储的字段。使用像fl=dist:geodist()这样的别名使距离返回到dist伪字段中。下面是一个按距离进行排序的示例,为dist中的每个文档进行升序和返回距离。 ...&q=&sfield=store&pt=45.15,-93.85&sort=geodist() asc&fl=dist:geodist()

现在,我正在使用solrj (4.5.1),无法找到正确设置fl=_dist_:geodist()部件的方法。实际上,我可以设法将它添加到solrQuery对象中:

代码语言:javascript
复制
solrQuery.setParam('fl', '_dist_:geodist()')

没有编译错误,但由于某种原因,这会扰乱我返回的文档。

你知道该怎么做吗?

Ps。代码是用groovy语言编写的,不要因为单引号中没有分号或字符串而抓狂:)

* UPDATE *

如前所述,设置fl参数实际上会导致返回只包含_dist_字段的文档!

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2014-02-25 23:07:46

经过几分钟的搜索,我找到了这篇文章:http://solr.pl/en/2011/11/22/solr-4-0-new-fl-parameter-functionalities-first-look/

它解释了除了所有其他参数之外,如何返回新的别名字段,就像这样(请注意*部分):

代码语言:javascript
复制
fl=*,stock:sum(stockMain,stockShop)

因此,在我的solrj示例中,它将是:

代码语言:javascript
复制
solrQuery.setParam('fl', '*,_dist_:geodist()')
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/22027885

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档