我现在的SQL语句实现的效果是select data,name from test
data                 name  
2009-04-16            AA
2009-04-16            BB
2009-04-17            CC想写条SQL语句 实现的效果是  (条件是data相同的name相加)
data                 name
2009-04-16           AA+BB
2009-04-17           CC谢谢赐教

解决方案 »

  1.   

    10g以上版本用wmsys.wm_concat(),9i用sys_connect_by_path
    lz可以搜搜他们的用法,论坛上也有不少例子
      

  2.   

    select data  ,
    substr(max(sys_connect_by_path(name ,'+')),2) name ,
    from ( select 
    data  ,name , row_number() over(order by name ) rn
    from test   ) 
    )
    start with rn=1
    connect by rn-1=prior rn
    group by data    
    ORCAL9I
      

  3.   

    10gSELECT data,REPLACE(wmsys.wm_concat(name), ',', '+') name
      FROM test 
     GROUP BY data