0
Speeading了查詢我的查詢,看起來像這樣通過刪除光標
declare @tmpTable Table(id int)
insert into @tmpTable(id) values (3)
insert into @tmpTable(id) values (5)
insert into @tmpTable(id) values (11)
declare @tmp int
declare @finalString varchar(MAX)
DECLARE c1 CURSOR READ_ONLY FOR SELECT ID FROM @tmpTable
OPEN c1
FETCH NEXT FROM c1 INTO @tmp
set @finalString=cast(@tmp as varchar)
FETCH NEXT FROM c1 INTO @tmp
WHILE @@FETCH_STATUS = 0
begin
set @[email protected]+','+cast(@tmp as varchar)
FETCH NEXT FROM c1 INTO @tmp
end
close c1
deallocate c1
select @finalString
我想創建一個字符串從表列值格式化這樣「-3,5,11-」,此代碼的工作,但有一個更好的方法來做到這一點?
是的。幾種方法。建議您搜索SO ... – 2011-04-08 08:16:57
:http://stackoverflow.com/questions/1071022/fastest-way-to-loop-thru-a-sql-query – 2011-04-08 08:19:36
http://stackoverflow.com/questions/4019942/concatenating-string – 2011-04-08 08:20:23