Ich muss dynamisch Spalten erstellen, die basierend auf dem Laufvorkommen benannt werden. Wenn ich Daten als solche haben:Dynamische SQL-Spaltennamen basierend auf Ereignisreihenfolge
RunID TestID Status
----- ------ ------
1 200 Passed
2 200 Failed
3 300 Failed
4 400 Not Complete
5 400 Passed
6 400 Passed
Was muss ich zurückkehren ist:
TestID Run1 Run2 Run3
------ ---- ---- ----
200 Passed Failed
300 Failed
400 Not Complete Passed Passed
Ich kann zuerst alle Läufe nennen, aber über den Status Verschwenkung selbst im dynamischen Lauf auszurichten ist, wo ich Hau ab. Muss ich einen CTE verwenden, um die Läufe zu erhalten, dann einen, um die maximale Anzahl zu erhalten, die eine TestId aufgerufen wurde, und dann Spaltenstringnamen basierend auf 1 bis max (Anzahl (TestID)) zu erstellen? Wie bekomme ich das dann in Spalten, die den richtigen Status haben? Ist ein Drehpunkt sogar dort, wo ich sein muss?
Das ist perfekt! Danke, ich habe nicht mal eine XML PATH-Lösung betrachtet, um die Spaltennamen zu erstellen. Ich schätze, ich muss etwas mehr darüber nachdenken. Danke, John Cappelletti, du hast meine geistige Gesundheit gerettet. –
@ S.G. Freue mich zu helfen. Ein Blick in den XML-Pfad und die Fensterfunktionen ist die Mühe wert. Prost :) –
Gibt es eine Chance, dass Sie den besten Weg kennen, um die Spalten für "Run" in Reihenfolge zu halten? Um zu verhindern, dass "Run1" "Run10" passiert? Halten Sie auch "NULL" Werte mit dem tatsächlichen Lauf und nicht bis zum Ende geschoben? –