还是那个问题

select cast(1.47e-5 as char(8))
发生类型 varchar 的算术溢出错误,值 = 0.000015。为什么是0.000015呢?不懂

改成char(3)也是这个结果

作者: tomatobin   发布时间: 2011-06-12

原因是你的位数不够长
SQL code

select cast(1.47e-5 as char(30))

作者: maco_wang   发布时间: 2011-06-12

SQL code

select cast(1.47e-5 as decimal(16,7))
/*
0.0000147
*/

作者: maco_wang   发布时间: 2011-06-12

位数被你限定太小了

作者: TinaZhai   发布时间: 2011-06-12

你的是char(8) 长度太短

作者: fredrickhu   发布时间: 2011-06-12

长度不够,所以导致拆分,所以报错。char类型是固定长度,如果数据的大小大都接近某一长度的值事,用char
记住char的长度一定要大于你的字段数据的长度才行

作者: chuanzhang5687   发布时间: 2011-06-12

因为你的 char 的长度 太小了

作者: abcjun188   发布时间: 2011-06-12

1.47e-5 是科学计数法.
1.47e-5 = 1.47 乘 10的-5次方 = 1.47 * 0.00001 = 0.0000147

作者: xiaoliaoyun   发布时间: 2011-06-12