【发布时间】:2020-09-02 20:36:42
【问题描述】:
我有这个布尔查询:
{
"bool": {
"must_not": [
{
"exists": {
"field": "*multiparttype.doNotDisplay",
"boost": 1
}
}
],
"should": [
{
"exists": {
"field": "multiparttype",
"boost": 1
}
},
{
"exists": {
"field": "*multiparttype.oldValue",
"boost": 1
}
},
{
"exists": {
"field": "*multiparttype.newValue",
"boost": 1
}
}
]
}
}
如果 ES 具有以下结构,则返回数据。如果存在如下文档,则此查询将起作用并返回此文档
multiparttype{
oldValue: "YY",
newValue:"XXX",
type:10
}
但如果文件只有这个:
multiparttype{
type:10
}
或
multiparttype{
}
以上查询不会返回此文档
我怎样才能使它成为可能??
【问题讨论】:
-
澄清:_source 不包含多部分类型,因此它不会出现,对吗?
-
我已经更新了描述,请看一下
-
对于您的用例,"multiparttype" 不存在 & multiparttype = {} 是两个不同的东西?
-
这能回答你的问题吗? ElasticSearch null_value with an object?
-
如果它的
multiparttype{ oldValue: "YY", newValue:"XXX", type:10 }查询工作正常但如果它是multiparttype{ type:10 }或multiparttype{ }或者如果multiparttype没有退出那么我的查询不起作用。
标签: elasticsearch