2013-10-05 25 views
0

請幫我在Oracle中執行以下操作。Oracle中的列值串聯

我有這樣的事情列名爲id,我需要在級聯

Id 
1 
2 
3 
4 
5 
6 
8 
9 
9 

我需要一個查詢返回1,2,3,4,5,6,7,8,9,9

我怎樣才能做到這一點?

+1

你有沒有想過你的共享現有的查詢,而只是要求人們寫的嗎? –

回答

0

嘗試

select ltrim(max(sys_connect_by_path(id, ',')), ',') 
    from (select id, rownum t 
      from yourtable t) 
connect by prior t = t - 1 
start with t = 1; 
1

試試這個,

WITH t(ID) AS 
(
SELECT 1 FROM dual 
UNION 
SELECT 2 FROM dual 
UNION 
SELECT 3 FROM dual 
UNION 
SELECT 4 FROM dual 
) 
SELECT LISTAGG(ID, ',') WITHIN GROUP (ORDER BY ID) 
FROM t;