弹性搜索:过滤文档,然后只返回源,没有任何其他内容

时间:2014-02-24 20:26:14

标签: elasticsearch

你好我刚接触弹性搜索,目前正在使用

curl -XGET 'http://blah/blah/_search?pretty=True' -d '{
"query": {
    "filtered": {
        "filter": {
            "range": {
                "time": {
                    "from": "2014/02/11 00:00:00", "to":"2014/02/12 00:00:00"
                }
            }
        }
    }
}
}'

但它会像我这样回报我:

{
  "took" : 1,
   "timed_out" : false,
   "_shards" : {
    "total" : 5,
    "successful" : 5,
    "failed" : 0
  },
  "hits" : {
    "total" : 2,
    "max_score" : 1.0,
    "hits" : [ {
      "_index" : "blah",
      "_type" : "blah",
      "_id" : "blah",
      "_score" : 1.0, "_source" : {
        "blah" : [...<the contents that really useful to me>..]

额外的标题对我来说是多余的并且会引起麻烦,我唯一需要的是“_source”下的内容。从官方ES博客我发现

curl -XGET 'http://localhost:9200/twitter/tweet/1/_source'

将返回一个“干净的”_source,但在实践中,我不会知道我的文件的_id,我将无法使用该格式的过滤器(如果有人知道如何请告诉我)。那么无论如何我可以过滤我的文件并返回一个只包含“_source”内容的“干净”结果? 谢谢!

0 个答案:

没有答案