Er zijn een paar dingen mis met uw vraag.
Ten eerste mis je een geaggregeerde functie op je PIVOT. U heeft een aggregaat nodig rond propertyvalue
.
Ten tweede moet je de $row1
. omringen , etc. met vierkante haken, geen enkele aanhalingstekens.
Ten derde zou ik een andere alias gebruiken voor de as pivot
Als resultaat wordt de code:
select *
from
(
select name, propertyvalue, displayname
from indexrows
) a
pivot
(
max(propertyvalue)
for [displayname] in ([$row1], [$row2], [$row3])
) piv;