2016-03-15 131 views
0

我需要做一個查詢,我得到的結果,並放在一個行,每個逗號分隔。組查詢行導致一個結果

例如,我有這個疑問:

SELECT 
    SIGLA 
FROM 
LANGUAGES 

該查詢返回下面的結果:

SIGLA

ESP 
EN 
BRA 

我需要得到這個結果在一個單行那樣:

SIGLA

ESP,EN,BRA 

誰能幫助我?

謝謝!

+1

您正在使用哪個Oracle版本? –

回答

1

嘗試

SELECT LISTAGG(SIGLA, ',') within group (order by SIGLA) as NewSigla FROM LANGUAGES 
+3

你沒有做完整的LISTAGG語法? SELECT LISTAGG(SIGLA, '')在組(ORDER BY SIGLA)「作爲 」S_List「 從語言 –

+0

'ORA-02000:缺少內更正keyword' – MT0

+0

請儘量 –

2
SELECT LISTAGG(SIGLA, ', ') WITHIN GROUP (ORDER BY SIGLA) " As "S_List" FROM LANGUAGES 

應該是如果你想要得到的值,甲骨文產生了行,那麼順序組合在一起,你需要

1

的LISTAGG序列:

SELECT LISTAGG(SIGLA, ',') WITHIN GROUP (ORDER BY ROWNUM) AS SIGLA 
FROM LANGUAGES; 

如果您要按字母順序排列,請用替換(或,curiouslyORDER BY NULL)。

相關問題