如表A:
name     num
name1    536
name2    258
name3    256
name4    243
name5    189合并后为:
name     num
name1    536
name2    258
othername 688 

解决方案 »

  1.   


    drop table t;
    create table t
     ( name varchar(20),
       num number);
    insert into t
    select 'name1',536 from dual
    union all
    select 'name2',258 from dual
    union all
    select 'name3',256 from dual
    union all
    select 'name4',243 from dual
    union all 
    select 'name5',189 from dual;
    select name,sum(num) as num
    from
    (
      select decode(rownum,1,name,2,name,'othername') as name,num
      from t
    )
    group by name;
    NAME                        NUM
    -------------------- ----------
    name1                       536
    name2                       258
    othername                   688
      

  2.   

    还有一种方法
    select name,sum(num) as num
    from
    (
      select decode(SIGN(rownum-3),-1,name,'othername') as name,num
      from t
    )
    group by name;