sql server中如何将float转换为varchar数据类型,且数据不异常

第1部分:问题描述

今天将数据从excel导入到sql server中时遇到问题,

导入的数据是手机号码,

导入后直接是float数据类型,

将这个导入的表数据复制到目标表时,

显示出现问题:

目标表对应字段位varchar数据类型,

原值:12345678910

显示值:1.235E+10

这样就很苦恼了,

第2部分:解决思路

寻找一个能将float转换为varchar类型的方法,

且不影响数据。

select convert(nvarchar(30),convert(int,联系方式)) from employee
//数据溢出,不行!
 
 
select convert(nvarchar(30),convert(decimal(11,0),联系方式)) from employee
//数据转换成功!
SELECT CONVERT(nvarchar(100), CAST(联系方式 AS decimal(11,0))) from employee
//数据转换成功!
SELECT STR(联系方式, 11, 0)from employee
//数据转换成功!

第3部分:结论

可以绕个弯子,将float转换为decimal后再转换为varchar

解决问题

© 版权声明
THE END
喜欢就支持一下吧
点赞12 分享
评论 抢沙发

请登录后发表评论

    暂无评论内容