Warning: file_get_contents(/data/phpspider/zhask/data//catemap/0/search/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Search 当文档字段执行/不执行';与boost查询(bq)中的术语不匹配?_Search_Solr_Lucene_Boosting - Fatal编程技术网

Search 当文档字段执行/不执行';与boost查询(bq)中的术语不匹配?

Search 当文档字段执行/不执行';与boost查询(bq)中的术语不匹配?,search,solr,lucene,boosting,Search,Solr,Lucene,Boosting,我想知道如何解释boost查询。我知道如果一个文档在boost上有一个匹配项,比如bq=name:“bob”^5,那么它将获得更高的排名,但一般来说,如果您有许多具有不同字段的术语,那么当给定的文档字段与值不匹配时会发生什么 bq中的这一术语只是“删除”并被忽略了吗?这是否意味着,如果您有类似于bq=name:“bob”^5 location:“Boston”2的内容,但文档上只有名称匹配,那么它将得到5分,但如果两者都匹配,则会得到7分?我读过这些文件,但我还是很难理解这一点 谢谢你的洞察力

我想知道如何解释boost查询。我知道如果一个文档在boost上有一个匹配项,比如
bq=name:“bob”^5
,那么它将获得更高的排名,但一般来说,如果您有许多具有不同字段的术语,那么当给定的文档字段与值不匹配时会发生什么

bq中的这一术语只是“删除”并被忽略了吗?这是否意味着,如果您有类似于
bq=name:“bob”^5 location:“Boston”2的内容,但文档上只有名称匹配,那么它将得到5分,但如果两者都匹配,则会得到7分?我读过这些文件,但我还是很难理解这一点

谢谢你的洞察力

来自文档

bq(Boost查询)参数
bq参数指定一个附加的可选查询子句,该子句将添加到用户的主查询中以影响分数

因此,如果某些文档与boostquery中的术语不匹配,那么特定文档将不会从结果集中排除。与其他人相比,他们只得到较低的分数。因为boost查询只会影响分数

现在我们来看下面的boost查询

bq=name:"bob"^5 location:"Boston"2
嗯,与只匹配一个查询的其他文档相比,匹配两个查询的文档得分更高。这将不是像(5+2)=7这样简单的数学计算。但有些分数是按照Lucene评分法计算的