Pivot mit Variable als Spalten?

IchHH

Datenbank-Guru
Beiträge
291
Hallo,

ich versuche mich gerade an der Funktion "Pivot" und wollte die Spalten als Variable angeben, da es sonst zu viele wären zum Abtippen. Mein Ansatz sah wie folgt aus:

Code:
DECLARE @Datum date,
        @query varchar(8000)

Set @Datum = (Select wBuch_Buchung_am from temp1)

Set @query = '[Kontenart],
        [wBuch_Buchung_am] as Buchung_am,
        [Saldo] as Wert
FROM (SELECT [Kontenart],
        [Saldo],
        [wBuch_Buchung_am] FROM temp1) AS s
PIVOT (SUM Wert FOR [Buchung_am] IN (''Saldo vom '' & [' + convert(VARCHAR(10),@Datum,104) + '])) AS B'

EXEC(@query)

die Fehlermeldung die ich dann bekomme lautet:

Die Unterabfrage hat mehr als einen Wert zurückgegeben. Das ist nicht zulässig, wenn die Unterabfrage auf =, !=, <, <=, > oder >= folgt oder als Ausdruck verwendet wird.

Das nicht nur eine Spalte das Ergebnis ist war mir klar. Nur so eine Meldung sagt mir bei Pivot nicht viel.

Jemand eine Idee was ich falsch gemacht habe?
 
Werbung:
Zurück
Oben