首先:

用col*1.00

  把int字段隐式转换成decimal类型。

然后:

round(col,2)来截取前两个小数前的数据

  最后:

CONVERT(FLOAT,decimalNum)来转换成float类型

  eg:

CONVERT(FLOAT,(round((col1*1.00 )*100/(col2*1.00),2) ))

  

  这里col2是总数,col1是部分,结果是这样的:

19.38

如果需要的话还可以加个“%”号,这样子:

CONVERT(nvarchar(5),(CONVERT(FLOAT,(round((col1*1.00 )*100/(col2*1.00),2) ))))+'%'

  

结果是这样的:

19.38%

05-22 15:16