Oracle - SELECT语句用于连接记录中的相同字段

时间:2014-04-03 18:24:13

标签: sql concat

我有一个表TB_FT,有两列ID_FT NUMBER(PK)和NM_FT VARCHAR。

 Like:   ID_FT  NM_FT
           1    MYFT1
           2    MYFT2

 I have another table TB_CEL_FT with 2 columns ID_FT NUMBER(FK) and ID_CEL NUMBER
 Like:   ID_FT    ID_CEL
           1        10
           1        11
           2        30
           2        31
           2        32

我需要创建一个返回sys_refcursor的存储过程:

      ID_FT    CELS
        1      10,11
        2      30,21,32    

我设法使用查询并将结果存储在TYPE中,但我需要找出如何将结果作为SYS_REFCURSOR返回。

你能帮助我吗? TIA 路易斯

1 个答案:

答案 0 :(得分:1)

较新的oracle支持listagg。您可以像这样使用它:

select
  id_ft,
  listagg(id_cel, ',') within group (order by id_cel) cels,
from
  table
group by
  id_ft