LISTAGG fonction avec deux colonnes

J'ai un tableau comme celui-ci (rapport)

--------------------------------------------------
|  user_id |  Department | Position  | Record_id |
--------------------------------------------------
|  1       |  Science    | Professor |  1001     |
|  1       |  Maths      |           |  1002     |
|  1       |  History    | Teacher   |  1003     |
|  2       |  Science    | Professor |  1004     |
|  2       |  Chemistry  | Assistant |  1005     |
--------------------------------------------------

J'aimerais avoir le résultat suivant

   ---------------------------------------------------------
   | user_id  |  Department+Position                       |
   ---------------------------------------------------------
   |  1       | Science,Professor;Maths, ; History,Teacher |
   |  2       | Science, Professor; Chemistry, Assistant   |
   ---------------------------------------------------------

Cela signifie que j'ai besoin de préserver l'espace vide ' comme vous pouvez le voir dans le tableau de résultat.
Maintenant, je sais comment utiliser LISTAGG fonction, mais seulement pour une colonne. Cependant, je ne peux pas savoir exactement comment je peux faire pour les deux colonnes à la sametime. Voici ma requête:

SELECT user_id, LISTAGG(department, ';') WITHIN GROUP (ORDER BY record_id)
FROM report

Merci d'avance 🙂

OriginalL'auteur Jaanna | 2012-12-14