Puoi creare variabili di tabella (in memoria) e due diversi tipi di tabelle temporanee:
--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)
)
Modifica:
A seguito del feedback, penso che questo abbia bisogno di un piccolo chiarimento.
#table
e ##table
sarà sempre in TempDB.
@Table
le variabili saranno normalmente in memoria, ma non è garantito che lo siano. SQL decide in base al piano di query e, se necessario, utilizza TempDB.