sqlserver通過游標迴圈查詢

2021-08-14 14:04:27 字數 677 閱讀 2610

declare @id int;

declare tempcursor cursor

for ( select id

from hrmresource

where status in ( 0, 1, 2, 3 )

)order by id; --建立游標tempcursor,並定義游標所指向的集合

open tempcursor; --開啟游標

fetch next from tempcursor into @id; --游標讀取下乙個資料

while @@fetch_status = 0 --游標讀取下乙個資料的狀態,0表示讀取成功

begin

print ( @id ) --列印id

select * from hrmresource where id = @id;

fetch next from tempcursor into @id; --繼續用游標讀取下乙個資料

end

close tempcursor; --關閉游標

deallocate tempcursor; --釋放游標

sqlserver游標使用和迴圈

游標說簡單點都是設定乙個資料表的行指標,然後使用迴圈等運算元據 游標主要是用來完成複雜的業務邏輯 比如sqlserver中樹型查詢,比如如下業務點 資料表編號 名稱 父編號 1 中國 0 2 上海市 1 3 虹口區 2 4 楊浦區 2 顯示結果 中國 上海市 虹口區 中國 上海市 楊浦區 類似這樣的...

SQL SERVER迴圈遍歷(普通迴圈和游標迴圈)

自 1 首先需要乙個測試表資料student 2 普通迴圈 1 迴圈5次來修改學生表資訊 迴圈遍歷修改記錄 declare i int set i 0 while i 5 begin update student set demo i 5 where uid i set i i 1 end 檢視結果...

sql server 語句 迴圈 游標 臨時表

create table tmp i sarinfor varchar 10 建立乙個臨時表 insert into tmp select a.i sailorinfoid from cert sailorletter a left join crew sailorinfo b on a.i sai...