Elasticsearch范围查询字符串

时间:2013-06-26 08:23:55

标签: elasticsearch

ES索引包含" PRICE"字段映射为字符串(由于各种原因):例如" 2.00"或" 245.00"

运行RANGE FROM / TO(例如" 5"到" 20")查询还显示价格为" 500.00",&#34的文档; 1515.00"等

有没有人有一个功能性的解决方案如何规避这些额外的超出范围的文件?

1 个答案:

答案 0 :(得分:1)

您可以定义一个新字段,例如“PRICE_VAL”(或使用multi_field“PRICE.val”),并将其显式映射为“float”或“double”类型。

之后,索引字符串值和“PRICE”的数值。现在,您可以在“PRICE_VAL”上进行范围查询,而无需触及“PRICE”字段。