展开全部
select cast('8.5738' as numeric(10,1)),基本上数字只要是四舍五入都可以转成numerice,后面2个参数,1代表数字长度,2代表小数点后的位数,你将你sql中的round去掉应该就行
追问
我之前nvarchar转numeric的时候搞错了,没保留后面的小数点精度。
所以导致现在保留1位2位都变成0 了
追答
有没有备份呢,最好找备份还原一下,还有,无法转换是因为在值中可能存在无法处理的字符,如回车,换行,全角空格等
另外可以用
begin try
end try
begin catch
end catch
来将错误的数据插入到表中,再看看表中的数据是否有问题
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询