Yah, itu tidak cantik, tetapi Anda dapat melakukannya:
if @loopcntr = 1
set var01 = 'somevalue'
else if @loopcntr = 2
set var02 = 'whatever'
else if . . .
Ini seharusnya cukup tidak menyenangkan sehingga Anda mungkin memikirkan alternatif. Oh, ini yang bagus. Tentukan variabel tabel dan cukup tambahkan baris untuk setiap nilai:
declare @vars table (
id int identity(1, 1),
loopcntr int,
value varchar(255)
);
. . .
-- inside the loop
insert into @vars(loopcntr, value)
select @loopcntr, 'whatever';
Bila Anda ingin mendapatkan variabel, Anda dapat melakukan:
declare @var varchar(255);
select @var = value from @vars where loopcntr = <the one I want>;