列名   QM             CS           N0        N1          N2        N3  AVG(平均值)
数据 球磨一系列 原矿品味%       1       NULL        1 NULL
     球磨一系列 原矿水分%       1       NULL 1 NULL
     球磨一系列 原矿细度       1       NULL 1 NULL
     球磨二系列 原矿亚铁%       1       NULL 1 NULL
     球磨二系列 中强磁尾品味%  1       NULL 1 NULL  字段  n0,n1,n2,n3中的数据不固定,有可能是空值或NULL值,QM,CS数据固定,
  怎么更新取得n0,n1,n2,n3的平均值AVG
   例如:第一行,NO,N2数据为1,N1,N3数据为空的时候,AVG的平均值为1

解决方案 »

  1.   

    QM        CS             N0     N1     N2     N3     AVG(平均值)
    球磨一系列 原矿品味%        1      NULL   1    NULL
    球磨一系列 原矿水分%        1      NULL   1    NULL
    球磨一系列 原矿细度          1      NULL   1    NULL
    球磨二系列 原矿亚铁%        1      NULL   1    NULL
    球磨二系列 中强磁尾品味%    1       NULL   1   NULL第一行为字段
    下面的为数据
      

  2.   

    select ((n0 + n1 + n2 + n3) / 4) as average, * from table1
      

  3.   

    谢谢楼上的回答,但是我要的不是这个结果,如果n0,n1,n2,n3中的一个结果为空的话,除数就得减一了
      

  4.   


    update table_1 set avg =
    (isnull(n0,0)+isnull(n1,0)+isnull(n2,0)+isnull(n3,0))/
    ((Case when n0 is null then 0 else 1 end)+
    (Case when n1 is null then 0 else 1 end)+
    (Case when n2 is null then 0 else 1 end)+
    (Case when n3 is null then 0 else 1 end))
      

  5.   

    isnull(a1,0)
    a1為字段,把a1為null的時候轉為0