我正在尝试使用prefix
和range
进行搜索。
这是可行的:
GET /traffic-*/_search
{
"query": {
"prefix": {
"src": {
"value": "192."
}
}
}
}
但是当我尝试加入range
时,我得到了一个错误:
GET /traffic-*/_search
{
"query": {
"prefix": {
"src": {
"value": "192."
}
},
"bool": {
"must": [
{
"range" : {
"score" : {
"gte": 7
}
}
}
]
}
}
}
下面是错误:
{
"error": {
"root_cause": [
{
"type": "parsing_exception",
"reason": "[prefix] malformed query, expected [END_OBJECT] but found [FIELD_NAME]",
"line": 8,
"col": 5
}
],
"type": "parsing_exception",
"reason": "[prefix] malformed query, expected [END_OBJECT] but found [FIELD_NAME]",
"line": 8,
"col": 5
},
"status": 400
}
我尝试了很多其他方法,包括像这样,但仍然得到同样的错误:
GET /traffic-*/_search
{
"query": {
"bool": {
"must": [{
"prefix": {
"src": {
"value": "192."
}
},
"range" : {
"score" : {
"gte": 7
}
}
}]
}
}
}
如何更正此语法?
1条答案
按热度按时间kninwzqo1#
尝试在Must Bool Query中添加“前缀”和“范围”查询。如下所示: