我尝试在人的索引上搜索(按名字和姓氏),这部分非常简单:
GET /my_index/persons/search
{
"query": {
"query_string": {
"query" : "john doe"
}
}
}
另外,我想排除具有特定ID的人,我尝试了
filter
子句,但是我无法正确地构成查询,你们可以帮助我吗?编辑
我试过了
{
"query":{
"multi_match":{
"query":"anne mirande",
"fields":[
"first_name",
"last_name"
],
"type":"cross_fields",
"operator":"and"
}
},
"filter":{
"not":{
"term":{
"id":1
}
}
}
}
但这是这样的: [过滤器]中START_OBJECT的未知键。
最佳答案
您可以使用类似这样的东西。
GET /my_index/persons/search
{
"query": {
"bool": {
"must": [
{"term": {
"name": {
"value": "john doe"
}
}}
],
"must_not": [
{"term": {
"_id": {
"value": "1"
}
}}
]
}
}
}
关于elasticsearch - elasticsearch 5:排除搜索,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/46215506/