【问题标题】:How to search for only positive range using fuzziness parameter in fuzzy query?如何在模糊查询中使用模糊参数仅搜索正范围?
【发布时间】:2017-03-06 10:08:37
【问题描述】:

我正在处理弹性搜索模糊查询。 这是我的查询,运行良好:

CURL -XGET 'localhost:9200/bank/_search?pretty' -d ' 
{
    "query": {
       "fuzzy" : {
           "balance" :{ 
              "value" :  20000,
              "fuzziness" :  10000
            }
        }
    }
}'

搜索结果按预期返回。 搜索结果包括余额在 10000 到 30000 范围内的文档,即 +fuzziness >= 20000 >= -fuzziness。

现在我的要求是只搜索正值范围,即仅大于 20000 且不小于 20000。

我尝试使用“+fuzziness”参数,但返回了 ParseException。 有什么建议吗?

【问题讨论】:

    标签: elasticsearch fuzzy-search


    【解决方案1】:

    你想要的是一个range 查询:

    {
        "query": {
            "range" : {
                "balance" : {
                    "gte" : 20000,
                    "lte" : 30000
                }
            }
        }
    }
    

    【讨论】:

    • 我知道可以使用范围来完成。但是如何使用模糊查询来实现呢?
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2013-02-18
    • 2010-09-08
    • 1970-01-01
    • 2020-03-15
    • 2014-08-20
    相关资源
    最近更新 更多