我想使用日期范围查询,如下所示:
{
"range" : {
"deadline" : {
"gte" : "2016-12-14",
}
}
}
我的索引也包含截止日期的空值。我想在搜索结果中获取那些空日期文档以及范围内的日期。如何将日期范围与弹性 5.x 中的“must_not”存在查询结合起来
我认为一个布尔查询就可以了。
{
"query": {
"bool": {
"should": [
{
"range": {
"deadline": {
"gte": "2016-12-14"
}
}
},
{
"bool": {
"must_not": {
"exists": {
"field": "deadline"
}
}
}
}
]
}
}
}
在 Elasticsearch 索引中null值不存在,所以我们使用存在查询。使用缺失的查询会更简洁,但它是自 2.2 起已弃用 https://www.elastic.co/guide/en/elasticsearch/reference/2.3/query-dsl-missing-query.html.
我没有足够的信息,所以我的示例运行在查询上下文,但也许过滤上下文在这种情况下会更方便。
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)