2016-09-30 55 views
0

我想在ElasticSearch搜索,但它给了一个错误:Elasticsearch异常

[failed to parse search source[{ 
    "sort": { 
     "sorter": { 
      "order": "desc", 
      "mode": "max" 
     } 
    }, 
    "query": [{ 
     "match": { 
      "muteFeedUserIds": "56f4ca2f44fc8650411170b0" 
     } 
    }, { 
     "match": { 
      "approvalStatus": "approved" 
     } 
    }], 
    "filter": { 
     "range": { 
      "sorter": { 
       "to": "2016-06-28", 
       "include_upper": false 
      } 
     } 
    } 
}]]; 
nested: ElasticsearchParseException[failed to parse search source.expected field name but got[START_OBJECT]]; 

任何想法,我缺少什么?

感谢

回答

0

试试这个查询,而不是:

{ 
    "sort": { 
    "sorter": { 
     "order": "desc", 
     "mode": "max" 
    } 
    }, 
    "query": { 
    "bool": { 
     "must": [ 
     { 
      "match": { 
      "muteFeedUserIds": "56f4ca2f44fc8650411170b0" 
      } 
     }, 
     { 
      "match": { 
      "approvalStatus": "approved" 
      } 
     } 
     ], 
     "filter": { 
     "range": { 
      "sorter": { 
      "to": "2016-06-28", 
      "include_upper": false 
      } 
     } 
     } 
    } 
    } 
} 
+0

这有什么好运气? – Val

0

嗨尝试以下方法(这也是更快的方式,而采用过滤器):

{ 
    "sort": { 
    "sorter": { 
     "order": "desc", 
     "mode": "max" 
    } 
    }, 
    "query": { 
    "bool": { 
     "must": [ 
     { 
      "term": { 
      "muteFeedUserIds": "56f4ca2f44fc8650411170b0" 
      } 
     }, 
     { 
      "term": { 
      "approvalStatus": "approved" 
      } 
     }, 
     { 
      "range": { 
      "sorter": { 
       "from": "2015-06-28", 
       "include_upper": false 
      } 
      } 
     } 
     ], 
     "should": [] 
    } 
    } 
} 

这绝对应该改正错误。