elasticsearch - 在elasticsearch中的同一个 bool 过滤器中搜索术语和范围

标签 elasticsearch

我的查询是这样的:

query: {
    filtered: {
        filter: {
            bool: {
                must: [
                    range: {price: {gte: 222, lte: 1000}},
                    term: {city: Adana}
                ]
            }
        }
    }
}

它返回空结果。但是使用 uri 搜索 (_search?q=city:Adana 会给出正确的结果。

提供多个范围查询,如纬度和价格有效,但添加术语失败。

这里可能有什么问题?

最佳答案

试试这个:

query: {
    filtered: {
        filter: {
            bool: {
                must: [
                    { range: {price: {gte: 222, lte: 1000}} },
                    { term: {city: Adana} }
                ]
            }
        }
    }
}

这是我用来测试它的一些代码:

http://sense.qbox.io/gist/7a4811d00e562f4d41e252ae5084ec78fa23d80f

关于elasticsearch - 在elasticsearch中的同一个 bool 过滤器中搜索术语和范围,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/32589129/

相关文章:

elasticsearch - 修改摄取的pdf的内容

java - 如何使用嵌入式 ElasticSearch 进行集成测试

elasticsearch - Logstash索引

elasticsearch - Elasticsearch:在将记录插入索引时,我不想创建索引映射

elasticsearch - 用消息中的特殊字符进行Grok解析

elasticsearch - 如何在must子句下使用范围和匹配进行查询?

elasticsearch - 如果原始模式中未定义新的 Elasticsearch 类型,如何不创建它?

elasticsearch - 在 elasticsearch 中使用新类型为现有索引创建映射

elasticsearch - Elasticsearch -查询仅搜索5个字符

elasticsearch - 如何通过multi_match,boost,wildcard和filter将ElasticSearch查询加入?