本文介绍了将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







- Amit


这篇关于将varchar值'12 .00'转换为数据类型int时转换失败。的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持!

08-04 00:33
查看更多