public class FieldValueFactorFunction extends Object
是FieldValueFactor的升级功能。
FunctionsScoreQuery中使用,该函数的功能是对doc中的某个field(必须为long或者double类型)简单运算打分。
例如:在FunctionsScoreQuery的query中使用match query查询姓名中含有“明”的同学,但是想对返回结果按照身高进行排序,此时可以使用此函数,在fieldName字段设置身高,factor与身高field 相乘,控制权重,modifier控制打分算法,包括平方、开方、取对数等简单运算,missing用于设置field缺省值。
运算举例:fieldName:height,factor:1.2f,modifier:LOG1P,则score = LOG1P(1.2f * height)
| Modifier and Type | Class and Description |
|---|---|
static class |
FieldValueFactorFunction.Builder |
static class |
FieldValueFactorFunction.FunctionModifier |
| Constructor and Description |
|---|
FieldValueFactorFunction() |
FieldValueFactorFunction(String fieldName,
Float factor,
FieldValueFactorFunction.FunctionModifier modifier,
Double missing) |
| Modifier and Type | Method and Description |
|---|---|
Float |
getFactor() |
String |
getFieldName() |
Double |
getMissing() |
FieldValueFactorFunction.FunctionModifier |
getModifier() |
static FieldValueFactorFunction.Builder |
newBuilder() |
void |
setFactor(Float factor) |
void |
setFieldName(String fieldName) |
void |
setMissing(Double missing) |
void |
setModifier(FieldValueFactorFunction.FunctionModifier modifier) |
public FieldValueFactorFunction()
public FieldValueFactorFunction(String fieldName, Float factor, FieldValueFactorFunction.FunctionModifier modifier, Double missing)
public String getFieldName()
public void setFieldName(String fieldName)
public Float getFactor()
public void setFactor(Float factor)
public FieldValueFactorFunction.FunctionModifier getModifier()
public void setModifier(FieldValueFactorFunction.FunctionModifier modifier)
public Double getMissing()
public void setMissing(Double missing)
public static FieldValueFactorFunction.Builder newBuilder()
Copyright © 2024. All Rights Reserved.