Вот как вы можете это сделать.
Объявите временную таблицу с символом и именем, затем с помощью функции подстроки sql поместите первый символ и имя в таблицу. Оттуда вы можете сгруппировать результаты.
Вот пример для вас для MS sql сервер
declare @tbl table(ch char(1), name nvarchar(50))
insert into @tbl
select ( SELECT SUBSTRING(e.address, 1, 1)),address from Emp2 e
select ch,name From @tbl
group by ch, name
select distinct t.[ch],
STUFF((SELECT distinct ', ' + t1.name
from @tbl t1
where t.[ch] = t1.[ch]
FOR XML PATH(''), TYPE
).value('.', 'NVARCHAR(MAX)')
,1,2,'') department
from @tbl t