我对elasticsearch的模糊查询有一些奇怪的行为,我不知道我做错了什么。
这些是我索引中的名称:
"hits": [
{
"name": "bbbb"
"name": "abab"
"name": "abbb"
"name": "aaaa"
}
}
]但是这个查询应该返回所有四个元素,它只返回"abab“和"aaaa”。
POST /test/_search?pretty
{
"size": 10,
"query": {
"fuzzy": {
"name": {
"value": "aaaa",
"fuzziness": 4
}
}
}
}Name字段映射为字符串类型。另一个问题是,将not_analyzed映射设置到字段是否会影响模糊查询结果?
发布于 2015-09-11 18:51:23
基于在Elasticsearch的公共选项-模糊性文档末尾引用的模糊查询文档,对于string字段,模糊参数似乎只接受以下值之一: 0、1、2、AUTO、0.0.0.1。这一节的最后一段作为注释:
注意:除了这个查询之外,在所有API中,允许的最大编辑距离是2。
正如您所观察到的,除此之外的任何内容似乎都被限制在编辑距离为2的范围内,因为0.90的文档有点不同,所以这一切都适用于Elasticsearch的后期版本。
https://stackoverflow.com/questions/32519328
复制相似问题