Ja. Sie müssen dem Tabellennamen ein "#" (Hash) voranstellen, um temporäre Tabellen zu erstellen.
Wenn Sie die Tabelle später NICHT benötigen, erstellen Sie sie. Temporäre Tabellen sind normalen Tabellen sehr ähnlich. Es wird jedoch in tempdb erstellt. Außerdem ist es nur über die aktuelle Sitzung zugänglich, dh für EG:Wenn ein anderer Benutzer versucht, auf die von Ihnen erstellte temporäre Tabelle zuzugreifen, kann er dies nicht tun.
"##" (Double-Hash erstellt "globale" temporäre Tabelle, auf die auch andere Sitzungen zugreifen können.
Unter dem folgenden Link finden Sie die Grundlagen temporärer Tabellen:http://www.codeproject.com/Articles/42553/Quick-Overview-Temporary-Tables-in-SQL-Server-2005
Wenn der Inhalt Ihrer Tabelle weniger als 5000 Zeilen umfasst und KEINE Datentypen wie nvarchar(MAX), varbinary(MAX) enthält, ziehen Sie die Verwendung von Tabellenvariablen in Betracht.
Sie sind am schnellsten, da sie genau wie alle anderen Variablen sind, die im RAM gespeichert werden. Sie werden auch in tempdb gespeichert, nicht im RAM
.
DECLARE @ItemBack1 TABLE
(
column1 int,
column2 int,
someInt int,
someVarChar nvarchar(50)
);
INSERT INTO @ItemBack1
SELECT column1,
column2,
someInt,
someVarChar
FROM table2
WHERE table2.ID = 7;
Weitere Informationen zu Tabellenvariablen:http://odetocode.com/articles/365.aspx