请问一下两个查询中SUM(frealchests)求和的值会相差这么多.请高人指点

解决方案 »

  1.   

    晕,你那个group by 的字段不一样,当然求和的值也不一样!
      

  2.   

    值不一樣的原因:where條件不一樣。Group by 不一樣。
      

  3.   

    group by fjobid,fpickarea怎么不一样呢
      

  4.   

    SELECT A.FJOBID,MIN(A.FLSTUPDTIME),a.fpickarea,sum(a.frealchests),count(distinct b.farticle),count(distinct a.fstore)
       FROM TPICKUP A,TPICKUPDTL B
      WHERE A.NUM = B.NUM    
        AND A.FJOBID >= '0809010001'
        AND A.FJOBID <= '0809020001'
        
      GROUP BY A.FJOBID,a.fpickarea;
    结果
    0809010001 2008-9-1 上午 08:16:18 20 25124 967 876
    0809010001 2008-9-1 上午 07:30:50 30 3640 303 799
    0809010001 2008-9-1 上午 08:09:08 38 0 3 4
    0809010001 2008-9-1 上午 07:25:23 40 0 514 936
    0809010001 2008-9-1 上午 08:21:40 1001 19007 299 914
    0809010001 2008-9-1 上午 08:21:37 1002 20382 305 911
    0809010001 2008-9-1 上午 08:16:16 1003 8688 271 880
    0809010001 2008-9-1 上午 08:19:29 1004 8484 272 888select FJOBID,fpickarea,sum(frealchests)
    from tpickup
    where  FJOBID >= '0809010001'
        AND FJOBID <= '0809020001'
        
      GROUP BY FJOBID ,fpickarea;
    结果
    0809010001 20 955
    0809010001 30 803
    0809010001 38 0
    0809010001 40 0
    0809010001 1001 1062
    0809010001 1002 1041
    0809010001 1003 907
    0809010001 1004 914
    0809020001 20 1192
    0809020001 30 842
    0809020001 38 0sum(frealchests),求出来的结果不同,实际上是每二个那个求和是对的,第一个问题在哪里