SOLR 查询提升
我像这样查询 Solr:
http://XXX.xx.xx:xxx/solr/select?q=name:(pizza)&fq=locationid:6050 OR _query_:"{!bbox}"&sfield=location&pt=34.0211224, -118.39646&d=8
我正在名称列上搜索记录,并且该记录必须落在 8 公里边界或 locationid 列值 6050 上。
现在我想提升与 locationid 列值 6050 匹配的记录。
I'm querying Solr like this:
http://XXX.xx.xx:xxx/solr/select?q=name:(pizza)&fq=locationid:6050 OR _query_:"{!bbox}"&sfield=location&pt=34.0211224, -118.39646&d=8
I am searching for records on name column and the record must fall on 8 kms Boundry OR locationid column value 6050.
Now I want to boost records which match locationid column value 6050.
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(1)
如果您在过滤器查询参数locationid:6050过滤器> 不会影响分数。您应该首先将过滤器移至
q
参数内。然后,您可以使用edismax
或dismax
查询解析器并调整过滤器的权重,如下所示:locationid:6050^2
。请查看此处。If you use the
locationid:6050
filter within the filter query parameter it won't influence the score. You should first of all move your filter inside theq
parameter. Then you can use theedismax
ordismax
query parser and play around with the weight of your filter like this:locationid:6050^2
. Have a look here.