假设我对一个keyword字段进行检索,检索体如下吗,其中的ABCD每个字母表示一个汉字
{
"query": {
"match": {
"search.keyword": {
"query": "ABCD",
"fuzziness": 1
}
}
},
"from": 0,
"size": 100}
但是结果中却不会出现ABC这个字符串,也没有ABCDE,只会有类似ABCE,ABCF等字符串
可是如果我把检索体改为
{
"query": {
"match": {
"search.keyword": {
"query": "ABCD",
"fuzziness": 1,
"prefix_length": 2
}
}
},
"from": 0,
"size": 100}
就可以检索到ABC
并且对于第一个检索体,无论我把fuzziness的值改为多少(除了0),搜索出来的数量和结果是一样的
{
"query": {
"match": {
"search.keyword": {
"query": "ABCD",
"fuzziness": 1
}
}
},
"from": 0,
"size": 100}
但是结果中却不会出现ABC这个字符串,也没有ABCDE,只会有类似ABCE,ABCF等字符串
可是如果我把检索体改为
{
"query": {
"match": {
"search.keyword": {
"query": "ABCD",
"fuzziness": 1,
"prefix_length": 2
}
}
},
"from": 0,
"size": 100}
就可以检索到ABC
并且对于第一个检索体,无论我把fuzziness的值改为多少(除了0),搜索出来的数量和结果是一样的
0 个回复