本文介绍了将varchar值'12 .00'转换为数据类型int时转换失败。的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!
问题描述
create table a_mark
(
roll_no varchar(20),
regulation_sub_id int,
ob_mark decimal(5,2),
mv_mark decimal(5,2)
)
DECLARE @mv_mark varchar(2000),
@ob_mark varchar(2000),
@tot varchar(2000),
@mv_mark1 varchar(2000),
@ob_mark1 varchar(2000)
SELECT @mv_mark =mv_mark
FROM a_mark
WHERE roll_no = '11csu002' AND regulation_sub_id = 1
SELECT @ob_mark = ob_mark
FROM a_mark
WHERE roll_no = '11csu002' AND regulation_sub_id = 1
SET @mv_mark1 = CAST(COALESCE(@mv_mark , 0) AS VARCHAR)
SET @ob_mark1 = CAST(COALESCE(@ob_mark, 0) AS VARCHAR)
select @mv_mark1,@ob_mark1
当我执行此查询时,它返回'转换时转换失败varchar值'12 .00'到数据类型int'.i需要'12 .00'结果。我应该在这里改变一下这样的结果???任何人都可以帮助我
When i execute this query it returns 'Conversion failed when converting the varchar value '12.00' to data type int'.i need '12.00' as result.what should i change here to gt a result like that??? can anyone help me
推荐答案
SELECT @mv_mark =CAST(mv_mark as VARCHAR)
FROM a_mark
WHERE roll_no = '11csu002' AND regulation_sub_id = 1
SELECT @ob_mark = CAST(ob_mark as VARCHAR)
FROM a_mark
WHERE roll_no = '11csu002' AND regulation_sub_id = 1
这篇关于将varchar值'12 .00'转换为数据类型int时转换失败。的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持!