sqlserver数据库float类型字段取值展示科学计数法问题

先说解决办法使用函数【convert(nvarchar(20),convert(bigint,问题字段))】解决。

影响

springboot+vue项目前端取值时字段显示科学计数法,影响用户使用。

可能原因

  1. 在数据库取值是就已经是科学计数法。(本篇发生原因)
  2. 在前端页面展示变为科学计数法。

经排查确认为数据库字段为‘float’类型,javabean字段为String类型,取值映射时出现问题。

解决思路

客户要求不可改变数据库字段类型(前提)

  1. javabean字段改为float,为不影响其他程序,在get方法上做手脚,返回string类型。因精度问题无法解决。
  2. 在sql层面解决,经百度搜索得可以用【convert(nvarchar(20),convert(bigint,问题字段))】解决。试了一下,问题解决。