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

时间:2014-10-03 12:43:58

标签: elasticsearch

我的json查询:

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

有谁知道如何搜索这两个词"马口"在字段publication_type?

Atm我只能在搜索" horse"或者"嘴巴" ..

使用elasticsearch 1.1

1 个答案:

答案 0 :(得分:2)

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

示例:

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