小编Con*_*scu的帖子

Elasticsearch不会先返回完全匹配

我有一个弹性搜索索引,其中有一个完全匹配的字段,不知怎的,我得到了很多类似的结果(我不介意)和那些类似的结果在完全匹配之前排序,(我记得.)

有人可以解释发生了什么以及如何解决它?

我的映射是这样的

"exact":{
  "type":"string",
  "boost":10.0,
  "analyzer":"keyword"
},
Run Code Online (Sandbox Code Playgroud)

我搜索"AAPL P JAN 2014 885,00"的查询是这样的:

{
  "size" : 21,
  "query" : {
    "field" : {
      "exact" : "AAPL P JAN 2014 885,00"
    }
  },
  "explain" : true,
  "sort" : [ {
    "_score" : {
      "order" : "desc"
    }
  } ],
  "facets" : {
    "category" : {
      "terms" : {
        "field" : "category",
        "size" : 10
      }
    }
  }
}
Run Code Online (Sandbox Code Playgroud)

并且返回的文档按此顺序结束:

  • {"exact":["APPLE INC","US0378331005","AAPL","73773"],"id-compound":"AAPL"}
  • {"exact":["AAPL","73773","AAPL P JAN 2014 675,00"],"id-compound":"AAPL*PUT*20140118*675"}
  • {"exact":["AAPL","73773","AAPL C JAN 2014 500,00"],"id-compound":"AAPL*CALL*20140118*500"} …

elasticsearch

6
推荐指数
1
解决办法
8082
查看次数

标签 统计

elasticsearch ×1