Konvertieren von Zeilen in Spalten in SQL SERVER 2008

In SQL Server 2008,

Ich habe eine Tabelle für die Nachverfolgung des status Geschichte von Handlungen ( STATUS_HISTORY ), die drei Spalten ([ACTION_ID],[STATUS],[STATUS_DATE]).

Jeder ACTION_ID haben kann, eine variable Anzahl von Status und status-Daten.

Ich konvertieren müssen diese Zeilen in Spalten, die vorzugsweise etwa so Aussehen:

[ACTION_ID], [STATUS_1], [STATUS_2], [STATUS_3], [DATE_1], [DATE_2], [DATE_3]

Dem die Gesamtanzahl der Spalten status und Datum-Spalten ist unbekannt, und - natürlich - DATE_1 entspricht STATUS_1 usw. Und ich möchte für die status werden in chronologischer Reihenfolge (STATUS_1 hat das früheste Datum, etc).

Grund für mich dies zu tun ist, so kann ich die 10 letzten Statusmeldungen auf einen Bericht in einer Access ADP, zusammen mit anderen Informationen, die für die einzelnen Maßnahmen. Mit einem Unterbericht mit jedem status in eine neue Zeile bewirkt, dass der Bericht viel zu groß.

Gibt es eine Möglichkeit, dies zu tun mit PIVOT? Ich will nicht, um das Datum oder den status als Spaltenüberschrift.

Ist es überhaupt möglich?

Ich habe keine Ahnung, wo Sie beginnen sogar. Es macht mein Kopf weh.

InformationsquelleAutor Dustin Oakes | 2011-03-07
Schreibe einen Kommentar