简单说明,项目需求,只能使用SQL语句实现功能,用存储过程、游标之类的答案就不需要了。将姓名    年月
---------------------
aa      200601
bb      200601
bb      200602拼写成形如
姓名    年月
---------------------
aa     200601
bb     200601、200602即:把不同姓名对应的年月,用'、'进行拼串
谢谢!

解决方案 »

  1.   

    参考
    http://community.csdn.net/Expert/topic/5037/5037398.xml?temp=.8146784
      

  2.   

    这个,如果不用函数可以么?
    因为这段SQL要被下一个模块的界面调用,我不太清楚是否嵌入函数的SQL语句能够被对方成功调用?
      

  3.   

    应该没问题吧,因为你的行数不一定,所以200601、200602 个数也不一定,不用循环用sql做不到。
      

  4.   

    为什么非得用sql,这要求也太bt了吧
      

  5.   

    http://topic.csdn.net/t/20050722/11/4161213.html
      

  6.   

    这个,也不是我非想用SQL的... 正在按照Eric  以及水清的方法试验,希望能够快速调通。
    下午要去客户那里了,最迟三天结帖。
      

  7.   

    select 姓名,ltrim(max(sys_connect_by_path(年月,'、')) keep (dense_rank last order by curr),'、' )as YM
     from
    (select 姓名,年月,row_number() over (partition by 姓名 order by 姓名) as curr,row_number() over (partition by 姓名 order by 姓名)-1 as prev from lyxtest)
    group by 姓名
    connect by prev=prior curr and 姓名=prior 姓名 start with curr=1