Вы можете комбинировать STUFF с XML PATH.
Например, если мы подадим ваш запрос к базе данных AdventureWorks и допустим, что мы хотели бы отобразить столбцы для таблиц, в имени которых содержится «Person», кроме столбца «BusinessEntityId», мы могли бы использовать следующий фрагмент T-SQL.
SELECT t1.name,
(
SELECT STUFF(C.name, 1, 0, '') + ' '
FROM sys.columns c
INNER JOIN sys.tables t ON c.object_id = t.object_id
WHERE t.object_id = t1.object_id AND c.name <> 'BusinessEntityId'
FOR XML PATH('')
) AS COLUMNLIST
FROM sys.tables t1
WHERE t1.name LIKE '%person%';
По сути, это то же самое, что и в вашем примере. Ваш пример еще проще.
В базе данных AdventureWorks есть пять таких таблиц, и результат запроса показан на рисунке ниже.
Большой ресурс для изучения - статья Simple Talk по следующей ссылке Объединение значений строк в Transact-SQL
Решение отлично работает на SQL Server 2005+. Решение, предоставленное Мартином (это не мой псевдоним), является предпочтительным, если вы используете SQL Server 2017+.