Имена категорий вопросов можно получить запросом:
select qc.name,qc.id, cx.contextlevel,cx.instanceid, 'CC/' || cc.name as xname
from {question_categories} as qc
inner join {context} as cx on qc.contextid=cx.id and cx.contextlevel=40
inner join {course_categories} as cc on cx.instanceid = cc.id
union
select qc.name,qc.id, cx.contextlevel,cx.instanceid,'C/' || cs.shortname as xname
from {question_categories} as qc
inner join {context} as cx on qc.contextid=cx.id and cx.contextlevel=50
inner join {course} as cs on cx.instanceid = cs.id
union
select qc.name,qc.id, cx.contextlevel,cx.instanceid,cs.shortname || '/' || mm.name || '/' || q.name as xname
from {question_categories} as qc
inner join {context} as cx on qc.contextid=cx.id and cx.contextlevel=70
inner join {course_modules} as cm on cx.instanceid = cm.id
inner join {course} as cs on cm.course = cs.id
inner join {modules} as mm on cm.module=mm.id and mm.name='quiz'
inner join {quiz} as q on cm.instance = q.id
У меня постгрес, т. ч. склейка строк делается оператором '||'. Как оно делается в других БД - не знаю.