【发布时间】:2019-09-05 17:54:51
【问题描述】:
我正在尝试在 AWS 中查询弹性搜索索引以获取质量属性大于 1000 的所有条目,该属性的数据类型为 Long。
我找到了范围查询并尝试过(参见下面的示例),但它什么也没返回,但当我使用其他查询时,它们返回质量大于 1000 的属性,因此它们肯定在索引中。
这是我正在尝试的范围查询:
{
"method": "POST",
"index": "users",
"type": "user",
"path": "_search?filter_path=filter",
"body": {
"size": 20,
"from": 0,
"query": {
"bool": {
"must":[{
"range": {
"mass": {
"gte": 1000
}
}
}]
}
}
}
}
我没有收到任何错误消息,只有零次命中。
【问题讨论】:
-
在 bool 元素下是否有更多的 bool 子句,或者为什么将单个范围查询放在布尔查询中?
-
没有,我试过不带 bool(只有范围部分),但也没有用
-
对我来说,您似乎使用了错误的 HTTP 动词。使用 GET 而不是 POST。
-
刚刚尝试过,也获得了零点击
-
移除 filter_path 参数。使用该参数,您可以控制响应中应包含的内容。
标签: amazon-web-services elasticsearch range-query