elasticsearch查询关键字slop

  • 2019 年 10 月 6 日
  • 笔记

假设有个文档,内容如下:

{      "title" : "工程师之路"  }

用下面带语句搜索不出来

GET /course/c/_search  {    "query": {      "match_phrase": {        "title": {          "query": "工师"          }      }    }  }

但,用带slop参数就能搜出来

GET /course/c/_search  {    "query": {      "match_phrase": {        "title": {          "query": "工师", "slop": 1          }      }    }  }

slop=n表示,可以隔n个字(英文词)进行匹配。

"query":"fox quick", "slop": 1 可以匹配到 “quick brown fox”

参考以下表格:

位置1

位置2

位置3

位置4

位置5

文档

slop 1

slop 2

slop 3