我需要做一個查詢,我得到的結果,並放在一個行,每個逗號分隔。組查詢行導致一個結果
例如,我有這個疑問:
SELECT
SIGLA
FROM
LANGUAGES
該查詢返回下面的結果:
SIGLA
ESP
EN
BRA
我需要得到這個結果在一個單行那樣:
SIGLA
ESP,EN,BRA
誰能幫助我?
謝謝!
我需要做一個查詢,我得到的結果,並放在一個行,每個逗號分隔。組查詢行導致一個結果
例如,我有這個疑問:
SELECT
SIGLA
FROM
LANGUAGES
該查詢返回下面的結果:
SIGLA
ESP
EN
BRA
我需要得到這個結果在一個單行那樣:
SIGLA
ESP,EN,BRA
誰能幫助我?
謝謝!
嘗試
SELECT LISTAGG(SIGLA, ',') within group (order by SIGLA) as NewSigla FROM LANGUAGES
你沒有做完整的LISTAGG語法? SELECT LISTAGG(SIGLA, '')在組(ORDER BY SIGLA)「作爲 」S_List「 從語言 –
'ORA-02000:缺少內更正keyword' – MT0
請儘量 –
SELECT LISTAGG(SIGLA, ', ') WITHIN GROUP (ORDER BY SIGLA) " As "S_List" FROM LANGUAGES
應該是如果你想要得到的值,甲骨文產生了行,那麼順序組合在一起,你需要
的LISTAGG序列:
SELECT LISTAGG(SIGLA, ',') WITHIN GROUP (ORDER BY ROWNUM) AS SIGLA
FROM LANGUAGES;
如果您要按字母順序排列,請用替換(或,curiously,ORDER BY NULL
)。
您正在使用哪個Oracle版本? –