我正在尝试构建一个只有在包含某个字段时才会返回结果的查询但是只有当这些字段不等于特定值时才会返回结果。
我无法管理正确的语法:
POST webdata/interaction/_search
{
"query": {
"filtered": {
"filter": {
"exists": {
"field": "mediaType"
},
"and": {
"not" {
"term" : { "mediaType" : "none" }
}
}
}
}
}
}
答案 0 :(得分:5)
将Bool Filter与must
和must_not
条款一起使用。
{
"query": {
"filtered": {
"filter": {
"bool": {
"must": {
"exists": {
"field": "mediaType"
}
},
"must_not": {
"term": {
"mediaType": "none"
}
}
}
}
}
}
}