件号 名称 数量 状态
aa 10 Y
aa 30 Y
aa 27 N
aa 34 N
ee 45 Y
ee 11 Y
ee 24 N
ff 34 N
ff 10 Y
怎样用SQL语句按照件号和状态为N,将数据合并起来,并将数量汇总起来啊?请指点。
结果如下图所示:件号 名称 数量 状态
aa 61 N
ee 24 N
ff 34 N

解决方案 »

  1.   

    不用decode,因为decode涉及聚合函数,我要求的不能用聚合函数,最好能用over函数解决。
      

  2.   

    嗯,因为字段很复杂,要是用聚合函数的话,结果达不到。over函数可以解决吗
      

  3.   

    嵌套一层就可以了呀select c1,sum(c2),c3
    from t1
    where c3 = 'N'
    group by c1,c3
      

  4.   

    SELECT *
      FROM (SELECT JIANHAO,
                   MINGCHENG,
                   SUM(SHULIANG) OVER(PARTITION BY JIANHAO, ZHUANGTAI)
              FROM TABLE1) A,
           (SELECT JIANHAO, ZHUANGTAI FROM TABLE1 WHERE ZHUANGTAI = 'N') B
     WHERE A.JIANHAO = B.JIANHAO
    是不是类似这样的。