Solr之functionQuery(函数查询)】的更多相关文章

Solr函数查询 让我们可以利用 numeric域的值 或者 与域相关的的某个特定的值的函数,来对文档进行评分. 怎样使用函数查询 这里主要有两种方法可以使用函数查询,这两种方法都是通过solr http 接口的. 内嵌在正常的solr查询表达式中.即,将函数查询写在 q这个参数中,这时候,我们使用_val_将函数与其他的查询加以区别.至于具体怎样使用,请读者留意下面的例子. 使用明确为函数查询的参数,比如说dismax中的bf(boost function)这个参数. 注意:bf这个参数是可以…
函数查询 让我们可以利用 numeric域的值 或者 与域相关的的某个特定的值的函数,来对文档进行评分. 怎样使用函数查询 这里主要有两种方法可以使用函数查询,这两种方法都是通过solr http 接口的. 内嵌在正常的solr查询表达式中.即,将函数查询写在 q这个参数中,这时候,我们使用_val_将函数与其他的查询加以区别.至于具体怎样使用,请读者留意下面的例子. 使用明确为函数查询的参数,比如说dismax中的bf(boost function)这个参数.  注意:bf这个参数是可以接受多…
一.简介 Solr的函数可以动态计算每个文档的值,而不是返回在索引阶段对应字段的静态数值集.函数查询是一类特殊的查询,它可以像关键词一样添加到查询中,对所有文档进行匹配并返回它们的函数计算值作为文档得分.使用函数查询,函数计算结果将用于修改相关度得分或用于搜索结果的排序.在应用程序层,函数计算的结果可以作为一个动态字段添加到每个文档.函数也可以嵌套,即一个函数的输出可以作为另一个函数的输入,函数允许嵌套任意多层. 二.函数语法 Solr的标准函数语法首先定义一个函数名,后面紧跟一对括号,括号中包…
作用 通过函数查询让我们可以利用 numeric域的值或者与域相关的的某个特定的值的函数,来对文档进行评分. 如何使用 这里主要有两种方法可以使用函数查询,这两种方法都是通过solr http 接口的: 1.内嵌在正常的solr查询表达式中.即,将函数查询写在 q这个参数中,这时候,我们使用_val_将函数与其他的查询加以区别.至于具体怎样使用,请读者留意下面的例子. 2.使用明确为函数查询的参数,比如说dismax中的bf(boost function)这个参数.  注意:bf这个参数是可以接…
摘要: 函数查询允许你使用一个或多个数字字段的真实值生成一个相关性分数,函数查询在standard,DisMax,eDisMax下都能使用. 查询函数可以是常量,字段或者其他函数的组合.使用函数可以影响结果的排序.本文整理自Solr官方文档:https://lucene.apache.org/solr/guide/6_6/function-queries.html 使用Function Query 1.直接向QParser指定函数参数,如func或frange: q={!func}div{pop…
Solr的defType有dismax/edismax两种,这两种的区别,可参见:http://blog.csdn.net/duck_genuine/article/details/8060026 edismax支持boost函数与score相乘作为,而dismax只能使用bf作用效果是相加,所以在处理多个维度排序时,score其实也应该是其中一个维度 ,用相加的方式处理调整麻烦. 而dismax的实现代码逻辑比较简单,看起来比较易理解,edismax是它的加强版,其实是改变了不少..比如在以下…
函数查询 可以利用 numeric字段的值 或者 与字段相关的的某个特定的值的函数,来对文档进行评分. 1.    使用函数查询的方法 这里主要有三种方法可以使用函数查询,这三种s方法都是通过solr http接口的. 1)    使用FunctionQParserPlugin.ie: q={!func}log(foo) 2)    使用“_val_”内嵌方法 内嵌在正常的solr查询表达式中.即,将函数查询写在 q这个参数中,这时候,我们使用“_val_”将函数与其他的查询加以区别. ie:e…
Solr实现Low Level查询解析(QParser) Solr基于Lucene提供了方便的查询解析和搜索服务器的功能,可以以插件的方式集成,非常容易的扩展我们自己需要的查询解析方式.其中,Solr内置了一些QParser,对一些没有特殊要求的应用来说,可以直接使用这些查询解析组件,而无需做任何修改,只需要了解这些查询解析组件提供的基本参数(Local Params),就可以实现强大的搜索功能. 对于Solr来说,它的设计目标就是尽可能屏蔽底层Lucene的复杂度和难点,而是通过提供可配置的方…
(十一)函数查询 1. 聚合函数 对一组值进行计算,得到一个返回值 SUM(), 求和 AVG(), 求平均 MIN(), 求最小 MAX(), 求最大 COUNT(), 计数,即个数 --例1 求所有学生的平均年龄 Select AVG(sage) AS 平均 FROM Student --求所有学生的最大..最小.平均年龄和人数 Select MAX(sage) AS 最大, MIN(sage) AS 最小, AVG(Sage) AS 平均 ,COUNT(*) AS 人数 FROM Stud…
fl: 是逗号分隔的列表,用来指定文档结果中应返回的 Field 集.默认为 “*”,指所有的字段. defType: 指定query parser,常用defType=lucene, defType=dismax, defType=edismax q: query. q.alt: 当q字段为空时,用于设置缺省的query,通常设置q.alt为*:*. qf: query fields,指定solr从哪些field中搜索. pf: 用于指定一组field,当query完全匹配pf指定的某一个fi…