第一种例子
SELECT ROW_NUMBER() OVER (ORDER BY Id) AS Row
into #tmp
FROM Person
DECLARE @beginNumber int
set @beginNumber = 1
declare @endNumber int
select @endNumber = COUNT(*) from Person
while(@beginNumber <= @endNumber)
begin
select Row from #tmp where Row = @beginNumber
set @beginNumber = @beginNumber + 1
end
第二种例子
declare @l nvarchar(50)
declare @id int = 0
while exists (select * from Person where id > @id)
begin
select top 1 @id=Id from Person where id > @id order by Id
end
cursor的例子省略
浙公网安备 33010602011771号