弹性搜索 - 使用条件或多个值搜索多个值

时间:2014-12-02 10:21:00

标签: elasticsearch

我将以下类型的数据编入索引到弹性搜索(ES)中。 {    “名”: “XYZ”,    “categoryTags”:[“ABC”,“DEF”,“GHI”,“IJK”....] }

我想搜索所有说过类别标签(至少其中一个或更多)的文件:       “ABC”或“GHI”或“IJK” 任何人都可以建议我查询这个用例吗?

先谢谢

2 个答案:

答案 0 :(得分:0)

在webbrowser上复制并粘贴以下命令。

http://xx.xx.xx.xx:9200/index_v1/type/_search?q=categorytag:abc|ghi&size=50

我希望这对你非常有用。

答案 1 :(得分:0)

您可以使用术语过滤器或术语查询。您可以将查询正文作为post参数传递。可以在ES文档中轻松找到详细信息。

  {
     "filter" : {
        "terms" : {
            "categoryTags" : ["ABC", "GHI", ...]
        }
      }
   }

   or 

   {
      "query" : {
           "term" : {"categoryTags" : ["ABC", "GHI", ...]}
      }
   }

请参阅ES documents