Ваше требование не имеет смысла, потому что переменная не может быть использована внутри табличной переменной.И если вы хотите использовать его после табличной переменной, это все равно не имеет смысла ... Ожидаете ли вы несколько экземпляров переменной, по одному разу для каждого отдельного значения Col1?Может быть, вы имели в виду следующее:
LEFT OUTER JOIN
(
SELECT Col1, String = STUFF((
SELECT ',' + Name
FROM dbo.MyTable AS i
WHERE i.Col1 = o.Col1
FOR XML PATH(''), TYPE).value('.', 'nvarchar(max)'),1,1,'')
FROM dbo.MyTable AS o
GROUP BY Col1
) AS T8
ON This = That
Однако T8 меня немного пугает.Сколько таблиц уже участвует в этом объединении?