可以使用动态sql语句进行语句连接,生成如下格式的字符串:
SELECT SUM(COL1[,COL2,...COLn]*1.0/(成本总和*100) FROM yTABLE [WHERE ..]
,对其EXEC就可以了

解决方案 »

  1.   

    To:simonhehe
       能否照着我的要求写个事例呢,你的那个我不怎么看的懂!谢谢
      

  2.   

    create table 计算表(id int identity(1,1),成本 decimal(18,2),所占比例 decimal(18,2))
    ---------------------------------------上面建表,输入成本,下面查询
    declare @total decimal(18,2)
    select @total=sum(成本) from 计算表 ------你给的数是不是少了算不到你要的比例
    select A.成本,(select sum(B.成本) from 计算表 B where B.id<=A.id),
    (select sum(B.成本) from 计算表 B where B.id<=A.id)/@total*100 from 计算表 A
    --------------------下面更新-----------------------------------------------
    declare @total decimal(18,2)
    select @total=sum(成本) from 计算表
    update 计算表 set 所占比例=(select sum(B.成本)/@total*100 from 计算表 B 
    where B.id<=#计算表.id)
      

  3.   

    To:wgzaaa
       非常感谢您能在深夜帮我解答问题,呵呵,问题已经解决!我问题中的数据只是给了一部分,是我没有说清楚,不好意思,现将100分送上,结贴!