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...