"from" 和 "gte"/"gt" 在 ElasticSearch 中的范围查询是否等价?
Are "from" and "gte"/"gt" equivalent in range query in ElasticSearch?
我刚刚发现我用于 ElasticSearch 操作的包 https://github.com/olivere/elastic 使用 from
、to
、include_lower
和 [= 创建了以下范围查询18=] 标签:
"query": {
"range": {
"myfield": {
"from": 0.6666,
"include_lower": true,
"include_upper": true,
"to": null
}
}
}
而 ES documentation 声明应使用以下内容。
"query": {
"range": {
"myfield": {
"gte": 0.6666
}
}
}
令我惊讶的是,前者(未记录)与后者的工作方式相同。它们等价吗?我应该期望它在很长的 运行 中起作用吗?这是在 ES 的某处指定的吗?
范围查询的旧格式(使用 from/to/include_upper/include_lower)在 0.90.4
中已被部分范围查询弃用
并且计划取消对已弃用符号的支持:https://github.com/elastic/elasticsearch/issues/48538#issuecomment-552642795
因此,如果您不喜欢惊喜,请将查询重构为官方范围查询符号。
我刚刚发现我用于 ElasticSearch 操作的包 https://github.com/olivere/elastic 使用 from
、to
、include_lower
和 [= 创建了以下范围查询18=] 标签:
"query": {
"range": {
"myfield": {
"from": 0.6666,
"include_lower": true,
"include_upper": true,
"to": null
}
}
}
而 ES documentation 声明应使用以下内容。
"query": {
"range": {
"myfield": {
"gte": 0.6666
}
}
}
令我惊讶的是,前者(未记录)与后者的工作方式相同。它们等价吗?我应该期望它在很长的 运行 中起作用吗?这是在 ES 的某处指定的吗?
范围查询的旧格式(使用 from/to/include_upper/include_lower)在 0.90.4
中已被部分范围查询弃用并且计划取消对已弃用符号的支持:https://github.com/elastic/elasticsearch/issues/48538#issuecomment-552642795
因此,如果您不喜欢惊喜,请将查询重构为官方范围查询符号。