Elasticsearch 6.2/Kibana查询:一字段必存在一字段不存在

Elasticsearch 6.2 / Kibana query: One field must exists and one field must not exists

我的愿望是搜索 field_a 存在而 fields_b 不存在的文档。 有没有一种方法可以使用 Kibana 中的 Lucene 查询语法(Kibana 的“发现”部分中的“搜索”字段)来执行此操作。

我尝试使用 _missing_:field_b 但没有成功(_exists_ 有效)。

我找到了这个,但没什么用:

GET /_search
{
    "query": {
        "bool": {
            "must_not": {
                "exists": {
                    "field": "user"
                }
            }
        }
    }
}

对于lucene搜索语法:

_exists_:field_a AND !_exists_:field_b

对于 elasticsearch 搜索语法:

{
 "query" : {
  "bool" : {
   "must" : [
     {"exists" : { "field" : "field_a" }}
   ],
   "must_not": [
     {"exists" : { "field" : "field_b" }}
   ]
  }
 }
}