怎么又是你

ES已存在的数据,是否能够转换类型

Elasticsearch | 作者 sishuidliunian | 发布于2019年01月04日 | 阅读数:7353

事情是这样的,我想要使用script去修改一个字段的数据(这个字段是Integer类型的),想要让数据减1,结果报错:
1546572254099.jpg

 

如果是加1的话,update结果不是数值加法,而是字符串的拼接(16 + 1 = 161)。我发现,我在index的时候,该字段的数据类型为String,虽然能够放入Integer类型中,但是在update的时候确实按照String类型来计算的。
 
 

”“.jpg

 
 

有没有什么办法能够把这种已经放入Integer mapping的String 进行类型转换,或者解决它的计算问题?
 
提前感谢!
已邀请:

laoyang360 - 《一本书讲透Elasticsearch》作者,Elastic认证工程师 [死磕Elasitcsearch]知识星球地址:http://t.cn/RmwM3N9;微信公众号:铭毅天下; 博客:https://elastic.blog.csdn.net

赞同来自:

只能通过reindex了,
步骤1:更换的时候,先定义好Mapping中的字段类型。
步骤2:reindex操作。

要回复问题请先登录注册