Sie können Tabellenvariablen (im Speicher) und zwei verschiedene Arten von temporären Tabellen erstellen:
--visible only to me, in memory (SQL 2000 and above only)
declare @test table (
Field1 int,
Field2 nvarchar(50)
);
--visible only to me, stored in tempDB
create table #test (
Field1 int,
Field2 nvarchar(50)
)
--visible to everyone, stored in tempDB
create table ##test (
Field1 int,
Field2 nvarchar(50)
)
Bearbeiten:
Nach dem Feedback denke ich, dass dies ein wenig geklärt werden muss.
#table
und ##table
wird immer in TempDB sein.
@Table
Variablen befinden sich normalerweise im Speicher, dies kann jedoch nicht garantiert werden. SQL entscheidet basierend auf dem Abfrageplan und verwendet ggf. TempDB.