elasticsearch搜索具有指定ID示例的元素

时间:2013-05-16 01:18:51

标签: json elasticsearch

我想在弹性搜索中找到具有给定ID的某些元素,但我无法想出一个简单的方法。

我看到http://www.elasticsearch.org/guide/reference/query-dsl/ids-query/但是在我的生活中无法弄清楚如何构建查询以使用它,或者当我用es-head或curl玩玩具时我看到的错误如下:

 Parse Failure [Failed to parse source [{"query":{"match_all":{}},"ids
{"values""1","4","100"]}}]]]; nested: SearchParseException[[dailyaggregates][4]: 
query[ConstantScore(NotDeleted(*:*))],from[-1],size[-1]: Parse Failure [No parser for 
element [ids]]]; }]

等。谁能告诉我如何设置它?感谢。

编辑:我对这个错误的尝试是来自es-head但是通过卷曲的类似错误。我相信我尝试的是一些变体:

{
   "query": {
   "match_all": {}
   },
  "ids": {
    "values": [
     "100"
    ]
  }
}

1 个答案:

答案 0 :(得分:18)

ids是一种查询,就像matchmatch_all一样。格式应该是:

{"query":{ "ids":{ "values": [ 100 ] } } }

您也可以将其作为过滤器执行,如下所示:

{"filter":{ "query": {"ids":{ "values": [ 100 ] } } } }