能够说出原因吗?
我自己写的sql 我也知道一样!
谢谢

解决方案 »

  1.   

    因为组 函 数 忽 略 空 值!所以先sum(如果全为空则先合计最后替换为0)和后sum(如果有空先替换为0再合计)是一样的。
      

  2.   

    SQL> select * from test;CO       COL2
    -- ----------
    1
    2
    3SQL> select sum(col2) from test; SUM(COL2)
    ----------SQL> select nvl(sum(col2),0) from test;NVL(SUM(COL2),0)
    ----------------
                   0SQL> select nvl(col2,0) from test;NVL(COL2,0)
    -----------
              0
              0
              0SQL> select sum(nvl(col2,0)) from test;SUM(NVL(COL2,0))
    ----------------
                   0