Можете да създавате променливи в таблицата (в паметта) и два различни типа временна таблица:
--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)
)
Редактиране:
След обратна връзка мисля, че това се нуждае от малко пояснение.
#table
и ##table
винаги ще бъде в TempDB.
@Table
променливите обикновено ще бъдат в паметта, но не е гарантирано, че ще бъдат. SQL решава въз основа на плана на заявката и използва TempDB, ако е необходимо.