天天看點

elasticsearch 自定義打分

curl -XGET 'http://localhost:9200/*/*/_search?pretty' -d '{

   "fields" : ["company_full_name","id"],

   "size" : 10, 

    "query": {

         "function_score": {

          "functions": [

             {

                  "filter": { "term": { "pinyin_name": "bx" } },

                  "weight": 100

             },

 {

                  "filter": { "term": { "blurry": "bx" } },

                  "weight": 10

{

 "field_value_factor" : {

 "field" : "frequency",

 "factor" : 0.1,

 "modifier" : "ln"

}

 }

          ],

  "score_mode": "sum"

       }

    }

 }' 

解釋

score=pinyin_name*100+blurry*10+ln(0.1*frequency)