0

我希望使用 Java API 使用弹性搜索来执行此查询。对于模糊查询,如何获得“prefix_length”参数?

询问:

{"query":{"bool":{"should":[

    {"fuzzy":{"object.name":{"value":"appl", "max_expansions":"1", "prefix_length" : 3}}},

    {"prefix":{"object.name":"appl"}},

    {"term":{"object.name":"appl"}}

]}}}

Java API:

QueryBuilder result = QueryBuilders.boolQuery()
            .minimumNumberShouldMatch(1)
            .should(QueryBuilders.fuzzyQuery(Company.FIELD_NAME, query)) ...

这里的文档没有解释如何获取“prefix_length”参数。有人可以解释吗?谢谢!

4

1 回答 1

0

啊哈。可以这样添加:

should(QueryBuilders.fuzzyQuery(Company.FIELD_NAME, query).maxExpansions(1).prefixLength(query.length() - 1)
于 2013-08-06T21:57:35.547 回答