cast(@char as int)
或使用convert函数
可以查查手册.

解决方案 »

  1.   

    cast( ... as int )
      

  2.   

    使用 CAST:CAST ( expression AS data_type ) 使用 CONVERT:CONVERT (data_type[(length)], expression [, style])这两个都可以.
      

  3.   

    convert(varchar,int_col)或者cast(int_col as varchar)
      

  4.   

    cast(@char as int)
    ---OR----
    convert(int,@char)
      

  5.   

    注意转换时可能会溢出,超出了int允许的最大整数值
      

  6.   

    为了避免转换出错,先用isnumeric()函数判断一下是否可以转换
    declare @aa char(10)
    select @aa='11'if isnumeric(@aa)=1
    select cast(@aa as int)
    else
    print '不能转换'select @aa='a11'if isnumeric(@aa)=1
    select cast(@aa as int)
    else
    print '不能转换'
      
    结果:
                
    ----------- 
    11(所影响的行数为 1 行)不能转换
      

  7.   

    convert('523',int_col)或者cast('123' as varchar)