首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 数据库 > SQL Server >

数据库里浮点型转换成字符型数据输出解决思路

2012-09-09 
数据库里浮点型转换成字符型数据输出如果存储的数据值为浮点型,以下语句print cast(@numas varchar(10))会

数据库里浮点型转换成字符型数据输出
如果存储的数据值为浮点型,以下语句

print cast(@num as varchar(10))会以科学技术法的形式显示,不满足业务部的显示要求。
print cast(cast(@num as numeric(10)) as varchar(10))会将数值取整后显示,也不满足业务部的要求。

有什么解决办法吗?


[解决办法]
try

SQL code
print ltrim(@num)
[解决办法]
或者是看需要保留多少位的小数,先转成decimal(长度,小数位数),再转varchar
[解决办法]
SQL code
DECLARE @i FLOATSET @i=987654123.1234SELECT  CAST(@i AS VARCHAR(50)),CAST(CAST(@i AS DECIMAL(18,4)) AS VARCHAR(50))/*                                                   -------------------------------------------------- --------------------------------------------------9.87654e+008                                       987654123.1234(1 行受影响)*/
[解决办法]
你需要给numeric 指定第二个参数,默认的是小数点后面灵位
SQL code
numeric(10)=numeric(10,0)numeric=numeric(18,0) 

热点排行