Chybí vám mezera mezi PivotData
a PIVOT
.
SET @query = @query +
' PIVOT (MAX(VALUE) FOR [NAME] IN (' + @columns + ')) AS p'
// ^--- HERE
Výsledkem je, že analyzátor SQL interpretuje PivotDataPIVOT
jako jeden identifikátor, což má později za následek chybu syntaxe.