select id,名称,分数1,分数2,分数3,分数4,(分数1+分数2+分数3+分数4)/(sign(分数1)+sign(分数2)+sign(分数3)+sign(分数4)) 平均分数 from 表

解决方案 »

  1.   

    select id,名称,分数1,分数2,分数3,分数4,(分数1+分数2+分数3+分数4)/((case when 分数1>0 then 1 else 0 end)+(case when 分数2>0 then 1 else 0 end)+(case when 分数3>0 then 1 else 0 end)+(case when 分数4>0 then 1 else 0 end)) 平均分数 from 表
      

  2.   

    select id,名称,分数1,分数2,分数3,分数4
      ,平均分=(分数1+分数2+分数3+分数4+0.0)
        /(case when 分数1>0 then 1 else 0 end
         +case when 分数2>0 then 1 else 0 end
         +case when 分数3>0 then 1 else 0 end
         +case when 分数4>0 then 1 else 0 end)
    from 表