在过去的一个小时里,我一直在努力寻找正确的格式来进行多重增强查询,有人可以帮助我正确地编写此格式吗?本质上,它是一个可以多次执行以下操作的查询。
这有效:
{
"query": {
"match" : {
"title": {
"query": "brain",
"boost": 2
}
}
}
}
这是我想要达到的目标,但是没有用。在标题中搜索一个正常术语,在标题中优先搜索另外两个术语。
{
"query": {
"match" : {
"title": {
"query": "neuron",
},
"title": {
"query": "brain",
"boost": 2
},
"query": "birdsong",
"boost": 3
}
}
}
}
我想澄清的另一件事是:
为了使ElasticSearch能够从 Web应用程序,它们必须作为Post HTTP请求提交?
答案 0 :(得分:1)
您需要像这样发出bool/should
查询:
POST index/_search
{
"query": {
"bool": {
"should": [
{
"match": {
"title": {
"query": "neuron"
}
}
},
{
"match": {
"title": {
"query": "brain",
"boost": 2
}
}
},
{
"match": {
"title": {
"query": "birdsong",
"boost": 3
}
}
}
]
}
}
}
发送查询时,接受GET和POST。