我有一个语句,如下:
select fldA,fldB,fldC from tbltest where fldA='A';
结果如下:
fldA   fldB   fldC
------------------------------
A      B1     C1
A      B1     C2
A      B1     C3
A      B1     C4
A      B1     C5
我如果想得到如下的结果:
A      B1     C1,C2,C3,C4,C5
那么这个语句改如何写啊?
求高手帮助一下。

解决方案 »

  1.   

    转一个帖子:http://dev-club.esnai.com/club/bbs/bbsView.asp
      

  2.   

    发错了,是这个:http://dev-club.esnai.com/club/bbs/showEssence.asp?id=26382&page=1
      

  3.   

    试试看,仅按你列出来的写了下,没作其他情况的控制:
    select fldA,
           fldB,
           sum(decode(fldC,'C1',fldC,null)) C1,
           sum(decode(fldC,'C2',fldC,null)) C2,
           sum(decode(fldC,'C3',fldC,null)) C3,
           sum(decode(fldC,'C4',fldC,null)) C4,
           sum(decode(fldC,'C5',fldC,null)) C5
    from tbltest
    where fldA='A'
    group by fldA,fldB
      

  4.   

    看这个帖子。
    http://community.csdn.net/Expert/topic/5037/5037398.xml?temp=4.114932E-02
      

  5.   

    select fldA,
           fldB,
           max(decode(fldC,'C1',fldC,0)) C1,
           max(decode(fldC,'C2',fldC,0)) C2,
           max(decode(fldC,'C3',fldC,0)) C3,
           max(decode(fldC,'C4',fldC,0)) C4,
           max(decode(fldC,'C5',fldC,0)) C5
    from tbltest
    where fldA='A'
    group by fldA,fldB
      

  6.   

    要用max ,不能用sum ,sum会报错