sqlsever 科学计数法 转标准值
一、解决方案
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 科学计数法 转标准值的更多相关文章
- csv 中 数值被自动转换成科学计数法 的问题 excel打开后数字用科学计数法显示且低位变0的解决方法
保存在csv中的 013812345678,前面的0会被去掉,后面是科学计数法显示.保存成 col1,="013812345678" 即可. 注意,分隔符逗号后面直接接“=”等号. ...
- 【转】js 中导出excel 较长数字串会变为科学计数法
[转]js 中导出excel 较长数字串会变成科学计数法 在做项目中,碰到如题的问题.比如要将居民的信息导出到excel中,居民的身份证号码因为长度过长(大于10位),excel会自动的将过长的数字串 ...
- C# 科学计数法转换成数字
/// <summary> /// 判断输入的数是否是科学计数法.如果是的话,就会将其换算成整数并且返回,否则就返回false. /// </summary> /// < ...
- C# 中科学计数法转成正常值
抓取数据的时候碰到科学技术法,查了一些资料,直接贴代码 /// <summary> /// 数字科学计数法处理 /// </summary> /// <param nam ...
- PAT 1024. 科学计数法 (20)
科学计数法是科学家用来表示很大或很小的数字的一种方便的方法,其满足正则表达式[+-][1-9]"."[0-9]+E[+-][0-9]+,即数字的整数部分只有1位,小数部分至少有1位 ...
- PHP 如何显示大数字,防止显示为 科学计数法 形式
PHP 数字超过一定长度时,会自动转换为 科学计数法 的形式,如 1.2345678912346E+16: 如何 避免转换,让它原样展示呢? 不过,可以用PHP函数 number_format() 来 ...
- 关于解决读取导入excel某列数字过长的科学计数法格式
因为 客户 需要导入 虚拟商品的卡号 excel已经是文本形式的单元格格式了 但是 到后台 java代码去获取的时候 仍然是 科学计数法格式 先找到以下资料做参考:http://love-66521. ...
- PAT乙级 1024. 科学计数法 (20)
1024. 科学计数法 (20) 时间限制 100 ms 内存限制 65536 kB 代码长度限制 8000 B 判题程序 Standard 作者 HOU, Qiming 科学计数法是科学家用来表示很 ...
- POI取消科学计数法
前台输入手机号13777777777,如果是为Double类型接收,就会自动转为科学计数法 找了下,一般是Double转String,方法一般有两种: 1.利用String.format() sale ...
随机推荐
- python基础5之装饰器
内容概要: 一.装饰器前期知识储备 1.python解释函数代码过程: python解释器从上往下顺序解释代码,碰到函数的定义代码块不会立即执行它,而是将其放在内存中,等到该函数被调用时,才执行其内部 ...
- Spring Cloud Zuul网关 Filter、熔断、重试、高可用的使用方式。
时间过的很快,写springcloud(十):服务网关zuul初级篇还在半年前,现在已经是2018年了,我们继续探讨Zuul更高级的使用方式. 上篇文章主要介绍了Zuul网关使用模式,以及自动转发机制 ...
- crontab执行带参数的php脚本,并取得参数[转]
现在越来越喜欢用linux了,程序当中也去掉了很多触发性判断,改用了借用linux的crontab的特性来进行,这样程序效率确实是高了很多. 比如我们每月1号清空月点击,比如每天凌晨统计上一天的访问报 ...
- 解决跨站脚本注入,跨站伪造用户请求,sql注入等http安全漏洞
跨站脚本就是在url上带上恶意的js关键字然后脚本注入了,跨站伪造用户请求就是没有经过登陆,用超链接或者直接url上敲地址进入系统,类似于sql注入这些都是安全漏洞. sql注入 1.参数化查询预处理 ...
- linkin大话面向对象--包和导入
我们现在的代码都扔在一个文件夹里面,比如以后我们做项目,是不是有可能有非常非常多的代码,那我就希望把不同功能和模块的类方便管理,放到不同的文件夹下,引出包概念. 什么是包,就一个文件目录,为了处理重名 ...
- Oracle 视图 (待更新, 缓存)
参考: 视图.索引.存储过程优缺点: http://www.cnblogs.com/SanMaoSpace/p/3147059.html oracle视图总结(转):http://tianwei013 ...
- JAVA中科学计数法转换普通计数法
今天发现数据库里汇总的数据有点大,一输出就被自动转化成科学计数法了.后来发现是转换字符串的方法有问题.如下: String a = "11234567.89"; BigDecima ...
- java从文件中读取json
wangxiaoer.json里面存放了json数据 需要依赖common-io.jar
- matlab输入输出语句(input、disp、fprintf)
输入语句 输入数值 ?x=input('please input a number:') please input a number:22 x = 22 输入字符串 ?x=input('please ...
- Spring事务不回滚原因分析
Synchronized用于线程间的数据共享,而ThreadLocal则用于线程间的数据隔离. 在我完成一个项目的时候,遇到了一个Spring事务不回滚的问题,通过aspectJ和@Transacti ...