我的查询是这个。我的目的只是我希望在国家/地区为空时排除该数据的数据。
q='{
"sort": [{
"creation_time": {
"order": "desc"
}
}],
"fields": ["id", "link_extracted","country"],
"from": 0,
"size": 50,
"query": {
"filtered": {
"query": {
"match_all": {}
},
"filter": {
"and": {
"filters": [
{
"must_not": {
"missing": {
"field": "country",
"existence": true,
"null_value": true
}
}
},
{
"range": {
"creation_time": {
"from": "2013-07-24",
"to": "2013-07-25",
"include_lower": true,
"include_upper": true
}
}
}, {
"term": {
"stream_type": "facebook"
}
},
{
"or": [{
"query": {
"query_string": {
"fields": ["post_message", "description", "post_name", "caption", "content", "tweet_text", "title", "positive_keyword"],
"default_operator": "AND",
"query": "obama"
}
}
}, {
"query": {
"query_string": {
"fields": ["post_message", "description", "post_name", "caption", "content", "tweet_text", "title", "positive_keyword"],
"default_operator": "AND",
"query": "goibibo"
}
}
}]
}],
"_cache": true
}
}
}
}
}'
它返回错误。请一些人帮助我
error: SearchPhaseExecutionException[Failed to execute phase [query], total failure; shardFailures {[dE5tGteLRz61iFpbB3KBcA][monitoring2][1]: SearchParseException[[monitoring2][1]: from[0],size[50],sort[<custom:"creation_time": org.elasticsearch.index.field.data.longs.LongFieldDataType$1@1faa54ab>!]: Parse Failure [Failed to parse source [{"sort":[{"creation_time":{"order":"desc"}}],"fields":["id","link_extracted","country"],"from":0,"size":50,"query":{"filtered":{"query":{"match_all":{}},"filter":{"and":{"filters":[{"must_not":{"missing":{"field":"country","existence":true,"null_value":true}}},{"range":{"creation_time":{"from":"2013-07-24","to":"2013-07-25","include_lower":true,"include_upper":true}}},{"term":{"stream_type":"facebook"}},{"or":[{"query":{"query_string":{"fields":["post_message","description","post_name","caption","content","tweet_text","title","positive_keyword"],"default_operator":"AND","query":"obama"}}},{"query":{"query_string":{"fields":["post_message","description","post_name","caption","content","tweet_text","title","positive_keyword"],"default_operator":"AND","query":"goibibo"}}}]}],"_cache":true}}}}}]]]; nested: QueryParsingException[[monitoring2] No filter registered for [must_not]]; }{[dE5tGteLRz61iFpbB3KBcA][monitoring2][4]: SearchParseException[[monitoring2][4]: from[0],size[50],sort[<custom:"creation_time": org.elasticsearch.index.field.data.longs.LongFieldDataType$1@5756e049>!]: Parse Failure [Failed to parse source [{"sort":[{"creation_time":{"order":"desc"}}],"fields":["id","link_extracted","country"],"from":0,"size":50,"query":{"filtered":{"query":{"match_all":{}},"filter":{"and":{"filters":[{"must_not":{"missing":{"field":"country","existence":true,"null_value":true}}},{"range":{"creation_time":{"from":"2013-07-24","to":"2013-07-25","include_lower":true,"include_upper":true}}},{"term":{"stream_type":"facebook"}},{"or":[{"query":{"query_string":{"fields":["post_message","description","post_name","caption","content","tweet_text","title","positive_keyword"],"default_operator":"AND","query":"obama"}}},{"query":{"query_string":{"fields":["post_message","description","post_name","caption","content","tweet_text","title","positive_keyword"],"default_operator":"AND","query":"goibibo"}}}]}],"_cache":true}}}}}]]]; nested: QueryParsingException[[monitoring2] No filter registered for [must_not]]; }{[dE5tGteLRz61iFpbB3KBcA][monitoring2][3]: SearchParseException[[monitoring2][3]: from[0],size[50],sort[<custom:"creation_time": org.elasticsearch.index.field.data.longs.LongFieldDataType$1@66ed8bb>!]: Parse Failure [Failed to parse source [{"sort":[{"creation_time":{"order":"desc"}}],"fields":["id","link_extracted","country"],"from":0,"size":50,"query":{"filtered":{"query":{"match_all":{}},"filter":{"and":{"filters":[{"must_not":{"missing":{"field":"country","existence":true,"null_value":true}}},{"range":{"creation_time":{"from":"2013-07-24","to":"2013-07-25","include_lower":true,"include_upper":true}}},{"term":{"stream_type":"facebook"}},{"or":[{"query":{"query_string":{"fields":["post_message","description","post_name","caption","content","tweet_text","title","positive_keyword"],"default_operator":"AND","query":"obama"}}},{"query":{"query_string":{"fields":["post_message","description","post_name","caption","content","tweet_text","title","positive_keyword"],"default_operator":"AND","query":"goibibo"}}}]}],"_cache":true}}}}}]]]; nested: QueryParsingException[[monitoring2] No filter registered for [must_not]]; }{[dE5tGteLRz61iFpbB3KBcA][monitoring2][0]: SearchParseException[[monitoring2][0]: from[0],size[50],sort[<custom:"creation_time": org.elasticsearch.index.field.data.longs.LongFieldDataType$1@1faa54ab>!]: Parse Failure [Failed to parse source [{"sort":[{"creation_time":{"order":"desc"}}],"fields":["id","link_extracted","country"],"from":0,"size":50,"query":{"filtered":{"query":{"match_all":{}},"filter":{"and":{"filters":[{"must_not":{"missing":{"field":"country","existence":true,"null_value":true}}},{"range":{"creation_time":{"from":"2013-07-24","to":"2013-07-25","include_lower":true,"include_upper":true}}},{"term":{"stream_type":"facebook"}},{"or":[{"query":{"query_string":{"fields":["post_message","description","post_name","caption","content","tweet_text","title","positive_keyword"],"default_operator":"AND","query":"obama"}}},{"query":{"query_string":{"fields":["post_message","description","post_name","caption","content","tweet_text","title","positive_keyword"],"default_operator":"AND","query":"goibibo"}}}]}],"_cache":true}}}}}]]]; nested: QueryParsingException[[monitoring2] No filter registered for [must_not]]; }{[dE5tGteLRz61iFpbB3KBcA][monitoring2][2]: SearchParseException[[monitoring2][2]: from[0],size[50],sort[<custom:"creation_time": org.elasticsearch.index.field.data.longs.LongFieldDataType$1@89f056b>!]: Parse Failure [Failed to parse source [{"sort":[{"creation_time":{"order":"desc"}}],"fields":["id","link_extracted","country"],"from":0,"size":50,"query":{"filtered":{"query":{"match_all":{}},"filter":{"and":{"filters":[{"must_not":{"missing":{"field":"country","existence":true,"null_value":true}}},{"range":{"creation_time":{"from":"2013-07-24","to":"2013-07-25","include_lower":true,"include_upper":true}}},{"term":{"stream_type":"facebook"}},{"or":[{"query":{"query_string":{"fields":["post_message","description","post_name","caption","content","tweet_text","title","positive_keyword"],"default_operator":"AND","query":"obama"}}},{"query":{"query_string":{"fields":["post_message","description","post_name","caption","content","tweet_text","title","positive_keyword"],"default_operator":"AND","query":"goibibo"}}}]}],"_cache":true}}}}}]]]; nested: QueryParsingException[[monitoring2] No filter registered for [must_not]]; }]
status: 500
}
答案 0 :(得分:0)
试试这个。 (must_not
不是过滤器类型,我将其更改为not
)
{
"sort": [
{
"creation_time": {
"order": "desc"
}
}
],
"fields": ["id", "link_extracted", "country"],
"from": 0,
"size": 50,
"query": {
"filtered": {
"query": {
"match_all": {}
},
"filter": {
"and": {
"filters": [
{
"not": {
"missing": {
"field": "country",
"existence": true,
"null_value": true
}
}
},
{
"range": {
"creation_time": {
"from": "2013-07-24",
"to": "2013-07-25",
"include_lower": true,
"include_upper": true
}
}
},
{
"term": {
"stream_type": "facebook"
}
},
{
"or": [
{
"query": {
"query_string": {
"fields": ["post_message", "description", "post_name", "caption", "content", "tweet_text", "title", "positive_keyword"],
"default_operator": "AND",
"query": "obama"
}
}
},
{
"query": {
"query_string": {
"fields": ["post_message", "description", "post_name", "caption", "content", "tweet_text", "title", "positive_keyword"],
"default_operator": "AND",
"query": "goibibo"
}
}
}
]
}
],
"_cache": true
}
}
}
}
}