Ja. Sie müssen dem Tabellennamen "#" (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 der Zugriff nur über die aktuelle Sitzung möglich, dh für EG: Wenn ein anderer Benutzer versucht, auf die von Ihnen erstellte temporäre Tabelle zuzugreifen, kann er dies nicht tun.
"##" (Doppel-Hash erstellt eine "globale" temporäre Tabelle, auf die auch andere Sitzungen zugreifen können.
Unter dem folgenden Link finden Sie die Grundlagen für temporäre 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, sollten Sie die Verwendung von Tabellenvariablen in Betracht ziehen.
Sie sind die schnellsten, da sie genau wie alle anderen Variablen sind, die im RAM gespeichert sind. 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