【发布时间】:2022-01-09 04:50:13
【问题描述】:
给定以下 Elasticsearch 文档结构
{
"mappings": {
"doc": {
"properties": {
"projectKey": {
"type": "keyword"
},
"documentDate": {
"type": "date"
},
"lastAnalysisDate": {
"type": "date"
},
"qualityScore": {
"type": "float"
}
}
}
}
}
我想获取所有满足这些条件的文档(伪代码):(currentDate - 1 year (documentDate - 1 year
第二个条件(斜体)是我遇到的问题。我不知道如何让查询引用documentDate 字段的值。
这是我目前尝试过的:
-
documentDate:[now-365d TO now] AND lastAnalysisDate:[documentDate-365d TO documentDate]=> 返回 0 个结果(应该是数千个) -
documentDate:[now-365d TO now] AND lastAnalysisDate:[doc['documentDate'].value-365d TO doc['documentDate'].value]=> 无效查询 -
documentDate:[now-365d TO now] AND lastAnalysisDate:[doc['documentDate'].date-365d TO doc['documentDate'].date]=> 无效查询
Grafana 只支持 Elasticsearch 的 Lucene 语法,所以我不能使用查询 DSL。
有什么办法可以做到吗?
提前谢谢你!
【问题讨论】:
标签: elasticsearch lucene grafana