/*查询结果( 任务数据表)
id    完成周期   开发率   权重值
1        2        15       50      (任务1)
2        3        28       150     (任务2)
     ........(N条结果)*/
我想实现的查询语句
      
  加权平均数=   (任务1完成周期 * 任务1开发率 * 任务1权重值 + 任务2周期 * 任务2开发率 * 任务2权重值  + 任务N.....) / 任务权重值总和
    
   请问这条SQL语句怎么写,有没有哪个会的啊,谢谢

解决方案 »

  1.   

    select sum(完成周期*开发率*权重值) from tb
      

  2.   

    select sum(完成周期*开发率*权重值)/sum(权重值) from tb
      

  3.   


    select (sum(完成周期*开发率*权重值)/sum(权重值)) as aaa from [table]
      

  4.   

    select case when sum(权重值)=0 then 0 else (sum(完成周期*开发率*权重值*1.000)/sum(权重值))  end as aaa from [table]
      

  5.   

    select (case when sum(权重值)=0 then 0 else
    sum(完成周期*开发率*权重值)/sum(权重值) ) from tb
      

  6.   


    T-SQL的SUM函数用法