elasticsearch - 过滤字段中的多个单词字符串(elasticsearch 1.1)

标签 elasticsearch

我的json查询:

{
   "size": 3,
   "query": {
        "filtered": {
            "query": { "match_all": {} },
            "filter": { "term": { "publication_type": "horse mouth" }}
        }
    }
}

有谁知道如何在字段publication_type中搜索两个单词“horse口”?

Atm我只能在搜索“马”或“嘴”时得到结果。

使用Elasticsearch 1.1

最佳答案

您可以为此使用terms过滤器。如果您希望所有术语都出现在文档中,则可以使用执行模式来“和”。默认值等于“或”

例:

{
   "size": 3,
   "query": {
        "filtered": {
            "query": { "match_all": {} },
            "filter": { "terms": { "publication_type": ["horse", "mouth"]}}
        }
    }
}

关于elasticsearch - 过滤字段中的多个单词字符串(elasticsearch 1.1),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/26179158/

相关文章:

java - 使用 Java 客户端的 Elasticsearch 查询序列化

c# - 如何使用NEST执行子聚合?

elasticsearch - 在Elasticsearch中删除前n个文档

elasticsearch - elasticsearch,function_score SearchPhaseExecutionException

Elasticsearch 映射,带有 null_value 的日期字段

python - Django ElasticSearch仅返回10个行集

amazon-web-services - Elasticsearch AWS Connect 失败?

elasticsearch - Elasticsearch 中的匹配数组

elasticsearch - 如果出现连字符,ElasticSearch将按词的一部分进行搜索

elasticsearch - 无法从 Elasticsearch 获取 [data] 集群的许可证信息