一、解决方案

2e-005 转成 0.00002

update 表名 set 列名=cast(列名 as float) as decimal(19,5)) where 列名 like  '%e%'

如果: 2e-006 转成 0.000002 那么  decimal(19,6)  ,以此类推。

二、测试:

select cast(cast('+1.590759e+01' as float) as decimal(19,5))

结果: 15.90759

三、实际应用:

Hg(汞,nvarchar类型)

数据问题举例:

<0.00001
3e-005

转换:update WaterQualityTemp set Hg= cast(cast(Hg  as float) as decimal(19,5))  where  Hg like '%e%'

结果:

<0.00001
0.00003

四、另一种方法

--测试案例
select convert(decimal(19,5),convert(float,'+1.590759e+01'))

--实际应用

update WaterQualityTemp set Hg= convert(decimal(19,5),convert(float,Hg))  where  Hg like '%e%'

----------------实际数据完整操作-----------------------------------------------

--Excel操作 全选,右键设置单元格格式,文本(考虑到大于小于符号)
--Excel导入数据库,改名为Temp
--Temp数据插入WaterQuality (插入前 Temp加ID列,设置主键和自增长。 WaterQuality的ID列暂时取消自增长)
--insert into WaterQuality select * from [dbo].Temp
-- 科学计数法 转标准值
--测试案例
--select cast(cast('+1.590759e+01' as float) as decimal(19,5))
--实际应用
--update WaterQuality set Hg= cast(cast(Hg as float) as decimal(19,5)) where Hg like '%e%'

--查看结果
--select * from WaterQuality

-- 另一种方法 update WaterQualityTemp set Hg= convert(decimal(19,5),convert(float,Hg)) where Hg like '%e%'
--测试案例
--select convert(decimal(19,5),convert(float,'+1.590759e+01'))
--实际应用
--insert into WaterQualityTemp select * from [dbo].Temp
--select * from WaterQualityTemp
--update WaterQualityTemp set Hg= convert(decimal(19,5),convert(float,Hg)) where Hg like '%e%'

参考内容:http://bbs.csdn.net/topics/350179663

sqlsever 科学计数法 转标准值的更多相关文章

  1. csv 中 数值被自动转换成科学计数法 的问题 excel打开后数字用科学计数法显示且低位变0的解决方法

    保存在csv中的 013812345678,前面的0会被去掉,后面是科学计数法显示.保存成 col1,="013812345678" 即可. 注意,分隔符逗号后面直接接“=”等号. ...

  2. 【转】js 中导出excel 较长数字串会变为科学计数法

    [转]js 中导出excel 较长数字串会变成科学计数法 在做项目中,碰到如题的问题.比如要将居民的信息导出到excel中,居民的身份证号码因为长度过长(大于10位),excel会自动的将过长的数字串 ...

  3. C# 科学计数法转换成数字

    /// <summary> /// 判断输入的数是否是科学计数法.如果是的话,就会将其换算成整数并且返回,否则就返回false. /// </summary> /// < ...

  4. C# 中科学计数法转成正常值

    抓取数据的时候碰到科学技术法,查了一些资料,直接贴代码 /// <summary> /// 数字科学计数法处理 /// </summary> /// <param nam ...

  5. PAT 1024. 科学计数法 (20)

    科学计数法是科学家用来表示很大或很小的数字的一种方便的方法,其满足正则表达式[+-][1-9]"."[0-9]+E[+-][0-9]+,即数字的整数部分只有1位,小数部分至少有1位 ...

  6. PHP 如何显示大数字,防止显示为 科学计数法 形式

    PHP 数字超过一定长度时,会自动转换为 科学计数法 的形式,如 1.2345678912346E+16: 如何 避免转换,让它原样展示呢? 不过,可以用PHP函数 number_format() 来 ...

  7. 关于解决读取导入excel某列数字过长的科学计数法格式

    因为 客户 需要导入 虚拟商品的卡号 excel已经是文本形式的单元格格式了 但是 到后台 java代码去获取的时候 仍然是 科学计数法格式 先找到以下资料做参考:http://love-66521. ...

  8. PAT乙级 1024. 科学计数法 (20)

    1024. 科学计数法 (20) 时间限制 100 ms 内存限制 65536 kB 代码长度限制 8000 B 判题程序 Standard 作者 HOU, Qiming 科学计数法是科学家用来表示很 ...

  9. POI取消科学计数法

    前台输入手机号13777777777,如果是为Double类型接收,就会自动转为科学计数法 找了下,一般是Double转String,方法一般有两种: 1.利用String.format() sale ...

随机推荐

  1. 一篇文章帮你解决python的包管理

    写python代码的人都知道,一个项目写下下来,不可避免的都需要使用很多第三方包,通常我们都是通过pip install ,然而当我们需要上线的时候问题来了,如果中间你自己不记得自己安装了多少个包,这 ...

  2. MYSQL优化派生表(子查询)在From语句中的

    Mysql 在5.6.3中,优化器更有效率地处理派生表(在from语句中的子查询): 优化器推迟物化子查询在from语句中的子查询,知道子查询的内容在查询正真执行需要时,才开始物化.这一举措提高了性能 ...

  3. ora-01190和ora-01110的解决方法

    SQLPLUS>ALTER DATABASE DATAFILE 2 ONLINE; ALTER DATABASE DATAFILE 2 ONLINE * ERROR 位于第 1 行: ORA-0 ...

  4. dubbo源码—Service Reply

    dubbo通过netty将请求发送到provider的时候,provider之前已经启动好的NettyServer监听指定端口的时候会收到来自consumer的请求,将通过网络发送来的二进制编码成Re ...

  5. JVM-垃圾收集的过程

    JDK1.7 JVM的垃圾收集算法有 1. 标记-清除算法: 2. 复制算法:在商业虚拟机都是使用这种算法来回收新生代的 3. 标记-整理算法: JDK1.7 JVM的垃圾收集器有 1. Serial ...

  6. Intellij 设置生成serialVersionUID的方法

  7. centos如何安装python库?

    通过yum install安装,先解决yum不能安装python库的问题 yum install -y  epel-release  #先安装epel源,参考http://sharadchhetri. ...

  8. python_如何设置文件缓冲类型

    案例: 将文件内容写入到硬件设备时候,使用系统调用,这类IO操作时间长,为了减小IO操作,通常会使用缓冲区(有足够多数据才能调用). 文件缓冲行为分为:全缓冲,行缓冲,无缓冲 如何解决? open(' ...

  9. junit源码解析--初始化阶段

    OK,我们接着上篇整理.上篇博客中已经列出的junit的几个核心的类,这里我们开始整理junit完整的生命周期. JUnit 的完整生命周期分为 3 个阶段:初始化阶段.运行阶段和结果捕捉阶段. 这篇 ...

  10. win10预览版无开始菜单解决方案

    1.按下Win+R键打开“运行”程序,键入gpedit.msc 回车以打开本地组策略编辑器 2.调到图示位置将windows设置->安全设置->本地策略->安全选项->“用户账 ...