2010-12-29 8 views
1

Wenn ich zum Beispiel so tun:SQL Server: put wählt Ergebnis in Variable

select * from test 

Dies wird ein Ergebnis mit allen Spalten und Zeilen von Tabellentest erzeugen. Kann dieses Ergebnis als "Text" in einer Variablen angegeben werden?

Dank

+0

Sie Wud Sie brauchen, dass alle als Text? – Singleton

+0

Was ist der Typ dieser Variablen? ist diese Tabellenvariable? – Singleton

+0

Ja, ich möchte das vollständige Ergebnis als Text (die Tabellenüberschriften könnten aus sein). Der Typ ist jemand, der Text unterstützt. Beispiel: Deklarieren @result nvarchar (500) –

Antwort

1

Dies tut, was Sie für

fragte
DECLARE @Result nvarchar(max) 
DECLARE @Xml xml = (select * from master..spt_values FOR XML PATH) 
SELECT @Result = CAST(@Xml.query('string(.)') as nvarchar(max)) 
PRINT @Result 

Ich vermute, dass Sie wahrscheinlich dort obwohl einige Spalten-/Zeilentrennzeichen werden soll.

Ich bin nicht sicher, ob dies geändert werden könnte, um dies zu tun. Meine XML-Kenntnisse sind ein bisschen zu wenig.

0

Ich glaube, Sie brauchen, um alle Spalten als nvarchar mit concatinating es zu werfen.

0

Verketten Sie einfach die Felder, die Sie (oder alle von ihnen) möchten, in ein varchar (max) oder ähnliches.

Verwandte Themen