Speichern Sie das Ergebnis vor dynamischer Abfrage
-
28-10-2019 - |
Frage
Gibt es eine Möglichkeit, dies zu erreichen:
CREATE TABLE #TempLocal (tmpBanner nvarchar(255) )
SET @Query = 'INSERT INTO #TempLocal (tmpBanner) SELECT TOP 1 F1 FROM '+ @dbTable_Dollar
SELECT @Banner = tmpBanner FROM #TempLocal
DROP TABLE #TempLocal;
SELECT @Banner
Grundsätzlich habe ich einen dynamischen Tabellenparameter und muss den Wert aus Spalte 1 Zeile 1 erhalten.
danken,
Ks
LÖSUNG
DECLARE @Banner nvarchar(255),
@chvSQL NVARCHAR(300)
SELECT @chvSQL = N'SELECT TOP 1 @Banner = [F1] from '+@dbTable_Dollar
EXEC sp_executesql @chvSQL, N'@Banner varchar(50) OUTPUT', @Banner OUTPUT
Lösung 2
Lösung
DECLARE @Banner nvarchar(255),
@chvSQL NVARCHAR(300)
SELECT @chvSQL = N'SELECT TOP 1 @Banner = [F1] from '+@dbTable_Dollar
EXEC sp_executesql @chvSQL, N'@Banner varchar(50) OUTPUT', @Banner OUTPUT
Andere Tipps
Sie können das Ergebnis Ihrer dynamischen Abfrage in Ihre Temp -Tabelle einsetzen:
CREATE TABLE #TempLocal (tmpBanner nvarchar(255) )
SET @Query = 'SELECT TOP 1 F1 FROM '+ @dbTable_Dollar
INSERT INTO #TempLocal (tmpBanner)
EXEC(@Query)
SELECT @Banner = tmpBanner FROM #TempLocal
Ich empfehle Ihnen jedoch, einen Blick darauf zu werfen dieser Link Erste.
Lizenziert unter: CC-BY-SA mit Zuschreibung
Nicht verbunden mit StackOverflow