select name as 科目,substring((convert(varchar,(number+0.0)/sum(number))),1,2)+'%'
from A

解决方案 »

  1.   

    friendliu(无为) :您说的方法,我试了,但好像不对
      

  2.   

    SELECT name as 科目, SUBSTRING(CONVERT(varchar, 100 * (number /
              (SELECT SUM(number)
             FROM T_Score))), 1, 2) + '%' AS 百分比
    FROM T_Score这样没有问题!
      

  3.   

    如果记录有重复!没有就是上面那个.SELECT name as 科目, SUBSTRING(CONVERT(varchar, 100 * (sum(number) /
              (SELECT SUM(number)
             FROM T_Score))), 1, 2) + '%' AS 百分比
    FROM T_Score
    group by name
      

  4.   

    select name,((score+0.0)/(select sum(score)  from subject))*100 from subject 
      

  5.   

    select name, rate = cast(convert(decimal(3, 2), (number * 100.00 / (select sum(number) from A))) AS varchar) + '%' from A
      

  6.   

    嘿嘿,正确答案是:select name, Convert(varchar(50),(number/(select sum(number) from A) * 100)) + '%' from A