Da Oracle 11gR2, la clausola LISTAGG dovrebbe fare il trucco:
SELECT question_id,
LISTAGG(element_id, ',') WITHIN GROUP (ORDER BY element_id)
FROM YOUR_TABLE
GROUP BY question_id;
Attenzione se la stringa risultante è troppo grande (più di 4000 caratteri per un VARCHAR2, per esempio):dalla versione 12cR2, possiamo usare ON OVERFLOW TRUNCATE/ERROR per affrontare questo problema.