ElasticSearch字符串查询更喜欢精确到通配符

时间:2015-04-12 12:42:08

标签: elasticsearch search full-text-search nosql

我有两个条目

  1. 希姆
  2. Rahima
  3. 当我搜索" Rahim"使用带有通配符的query_string,我获得了2个相同分数的entires。但是作为" Rahim"确切地说,对我来说,对于我来说,#Rahim"首先得分较高,而#34; Rahima"后来得分较低。查询是:

    GET index/type/_search
    {
      "query": {
        "query_string": {
          "default_field": "fullNameEn",
          "allow_leading_wildcard": false,
          "analyze_wildcard": true,
          "query": "Rahim*"
        }
      },
      "from": 0,
      "size": 10
    }
    

    任何帮助将不胜感激。

1 个答案:

答案 0 :(得分:0)

在查询字符串中使用增强术语

GET index/type/_search
{
  "query": {
    "query_string": {
      "default_field": "fullNameEn",
      "allow_leading_wildcard": false,
      "analyze_wildcard": true,
      "query": "Rahim^2 OR Rahim*"
    }
  },
  "from": 0,
  "size": 10
}