SQL Server 2008: Verknüpfen der Ergebnisse von STORED PROCEDURE (dynamische Spalten) mit Ergebnissen einer SELECT-Anweisung

9

Ich habe Ergebnisse, die von dieser gespeicherten Prozedur generiert werden .

Ich möchte diese Ergebnisse mit Daten in einer anderen Tabelle verknüpfen. Ich habe verschiedene Beispiele dafür gesehen, wie man eine temporäre Tabelle erstellt und in diese einfügt. Dies wäre jedoch nicht ideal, da die gespeicherte Prozedur viele dynamische Spalten zurückgibt Änderungen vorbehalten. Gibt es eine Möglichkeit, sie dynamisch zu verbinden?

Beispielszenario:

Gespeicherte Prozedur gibt Folgendes zurück:

%Vor%

Ich möchte es mit einer SQL-Abfrage verbinden, die etwas wie folgt erzeugt:

%Vor%

Mit anderen Worten ...

Gibt es einen schmerzlosen Weg, dies zu erreichen? Hier ist ein Psedo-Code von dem, was ich erreichen möchte (obwohl mir bewusst ist, dass das nicht funktioniert):

%Vor%

Auch hier weiß ich, dass Sie das nicht tun können, aber hoffentlich beschreibt es die Logik, nach der ich suche.

Beispiel gewünschte Ausgabe

%Vor%     
hendridm 25.02.2013, 22:29
quelle

4 Antworten

3

Wenn Sie keine temporäre Tabelle mit den Daten aus der dynamischen gespeicherten Prozedur erstellen können, schließen Sie sich der Tabelle direkt an:

%Vor%

Siehe SQL Geige mit Demo

    
Taryn 25.02.2013, 23:03
quelle
0

Versuchen Sie, diese hässliche Lösung zu verwenden, wenn Sie Ihren Code nicht reorganisieren können.

%Vor%

Sie müssen Ad Hoc Distributed Queries auf Ihrem Server erlaubt haben.

    
Hamlet Hakobyan 25.02.2013 22:48
quelle
-1

Sie können dies tun:

%Vor%

wenn #t definiert wurde, aber Sie können nicht in #t auswählen und dynamisch erstellen lassen.

    
Tim 25.02.2013 22:37
quelle
-1
%Vor%     
saikrishna 04.08.2016 09:59
quelle