这是我第一次问问题。
我计划使用Elasticsearch来存储我所拥有的某些数据。我面临的问题是,我需要将字段的值存储为可容忍的范围。像这样-字段名称-耐受pH示例值-5.1-7.0
我需要这样保存它,当执行查询时,它必须查看输入的值是否在范围内。
我在参考资料和指南中找不到它。我只找到范围过滤器。有人能帮帮我吗?并指导我如何做到这一点?
我将创建两个字段
{ ...
"minToleratedPh": 5.1,
"maxToleratedPh": 7.0
}
然后使用两个range
查询来检查约束minPh < input_value < maxPh
是否成立(只需将input_value
替换为要检查的pH值):
{
"query": {
"bool": {
"filter": [
{
"range": {
"minToleratedPh": {
"lt": input_value
}
}
},{
"range": {
"maxToleratedPh": {
"gt": input_value
}
}
}
]
}
}
}