У меня есть следующий код в запросе T-Sql, я получаю следующее сообщение об ошибке, и я не совсем уверен, что вызывает ошибку. Я пишу оператор Pivot как динамический b/c. Я не знаю столбцов, которые будут возвращены.T-Sql - ошибка Pivot
Сообщение об ошибке: Msg 8156, Уровень 16, Состояние 1, Строка 9 Для заголовка «Сводная таблица» многократно указывается заголовок «Название - Комиссия за одобрение/END8».
В таблице #FeeTotals Temp имеет 3 колонки 1) dwordrkey (уникальный ключ идентификатор), 2) Desc_Cd: описание заряда, 3) Итого: деньги колонки
DECLARE @PivotColumnHeaders VARCHAR(MAX)
SELECT @PivotColumnHeaders =
COALESCE(
@PivotColumnHeaders + ',[' + cast(Desc_Cd as varchar) + ']',
'[' + cast(Desc_cd as varchar)+ ']'
)
From #FeeTotals
DECLARE @PivotTableSQL NVARCHAR(MAX)
SET @PivotTableSQL = N'
Select *
From #FeeTotals
PIVOT
(
Sum(Total)
For Desc_Cd In (' + @PivotColumnHeaders + ')
)
As PivotTable'
Execute(@PivotTableSQL)
Для отладки вы можете заменить EXECUTE на ПЕЧАТЬ. Затем вы можете просмотреть фактическое утверждение, которое не выполняется. – bobs