Oracle SQL将列的值放在一行中

Oracle SQL将列的值放在一行中,sql,oracle,Sql,Oracle,我有一个查询,我正在返回一个3列 ID NUMBER LETTER 123 1 a 124 2 b 123 1 c 123 1 d 我想做的是像这样吵架 ID NUMBER LETTER 123 1 a,c,d 在Oracle 11g中,当ID和数字列相同为一个值且t时,可以使用以下函数: select id, number, listagg(letter, '

我有一个查询,我正在返回一个3列

ID    NUMBER    LETTER
123    1        a
124    2        b
123    1        c
123    1        d
我想做的是像这样吵架

ID    NUMBER    LETTER
123    1        a,c,d

在Oracle 11g中,当ID和数字列相同为一个值且t

时,可以使用以下函数:

select id,
  number,
  listagg(letter, ', ') within group(order by id, number) as letter
from yourtable
group by id, number;

请参见Oracle 11g中的

,您可以使用以下功能:

select id,
  number,
  listagg(letter, ', ') within group(order by id, number) as letter
from yourtable
group by id, number;

请参见

可能Oracle的哪个版本?可能Oracle的哪个版本?