我正在运行Elasticsearch 1.5.2并尝试以下查询:
{
"query": {
"filtered": {
"filter": {
"bool": {
"must": [
{
"term": {
"gender": "male"
}
}
]
}
},
"query": {
"bool": {
"must": [
{
"match_all": {}
}
],
"should": [
{
"term": {
"top_users": 1,
"boost": 2
}
}
]
}
}
}
}
}
一切都很好,直到我将" boost":2 添加到should - >术语部分。完整的查询要复杂得多,这就是我需要提升的原因,但剩下的查询没有任何区别:如果 term 查询得到的话,ES会返回错误400 提升参数:
QueryParsingException [[index_name] [_ na]查询格式错误,必须以start_object开头]
有什么建议吗?
答案 0 :(得分:4)
应该是like this:
{
"query": {
"filtered": {
"filter": {
"bool": {
"must": [
{
"term": {
"gender": "male"
}
}
]
}
},
"query": {
"bool": {
"must": [
{
"match_all": {}
}
],
"should": [
{
"term": {
"top_users": {
"value": "1",
"boost": 2
}
}
}
]
}
}
}
}
}