elasticsearch,Javascript,Twitter,elasticsearch" /> elasticsearch,Javascript,Twitter,elasticsearch" />

Javascript ElasticSearch查询创建

Javascript ElasticSearch查询创建,javascript,twitter,elasticsearch,Javascript,Twitter,elasticsearch,我在尝试构造ElasticSearch查询时遇到了很多麻烦 我需要根据两个字段的总和获得前25条推文,favoritesCount和retweetCount。我还需要能够在字段postedCount上指定日期范围 到目前为止,我能来的最近的一次是 query = { 'size' : 25, 'fields' : ['retweetCount', 'favoritesCount', 'preferredUsername', 'body'], "query": {

我在尝试构造ElasticSearch查询时遇到了很多麻烦

我需要根据两个字段的总和获得前25条推文,
favoritesCount
retweetCount
。我还需要能够在字段
postedCount
上指定日期范围

到目前为止,我能来的最近的一次是

 query = {
    'size' : 25,
    'fields' : ['retweetCount', 'favoritesCount', 'preferredUsername', 'body'],

    "query": {
        "range": { 
            "postedTime" : {
                'gte' : 'now-24M',
                'lte' : 'now'
            }
        }
    },
    "sort" : {
        "retweetCount" : {"order" : "desc"},
        "type" : "number",

    }

};
此查询对具有相同转发计数的推文总数进行了太多的结果和排序。我也不明白为什么这个查询不只返回查询中指定的字段


理想情况下,查询将只返回字段“[”retweetCount“,”favoritesCount“,”preferredUsername“,”body“]

这是您应该触发的查询:

curl -X GET 'http://localhost:9200/index_name/type/_search' -d '{
"size" : 25,
"fields" : ["retweetCount", "favoritesCount", "preferredUsername", "body"],

"query": {
    "range": { 
        "postedTime" : {
            'gte' : 'now-24M',
            'lte' : 'now'
        }
    }
},
"sort" : {
    "retweetCount" : {"order" : "desc"},
    "type" : "number",

}
}'
您正在将所有内容嵌入查询哈希中。这是不必要的