游標的語法,在說明書上 是有的。重要的是怎麼去理解。
我的理解,可能不是很對,但是對我很有用。
比如:乙個奶茶店,很多客人去買奶茶。客人就需要排隊,每個客人就是乙個鍵,隊伍就是游標。
建立乙個游標,就是給客人排個隊,每個客人是乙個變數,如下@sqla。
把客人範圍放到隊伍裡: declare m_cursor cursor scroll for
select sqla from #table_sql
for update
第乙個客人: fetch next from m_cursor into @sqla
判斷還有沒有客人: while @@fetch_status=0
給客人服務做奶茶:set @sql1=(select sqla from #table_sql where sqla=@sqla)
exec(@sql1)
update #table_sql set jlzt=1 where sqla=@sqla
服務完成: close m_cursor
deallocate m_cursor
完整的語法如下:
declare m_cursor cursor scroll for
select sqla from #table_sql
for update
open m_cursor
declare @sql1 varchar(1000)
declare @sqla varchar(1000)
fetch next from m_cursor into @sqla
while @@fetch_status=0
begin
set @sql1=(select sqla from #table_sql where sqla=@sqla)
exec(@sql1)
update #table_sql set jlzt=1 where sqla=@sqla
fetch next from m_cursor into @sqla
endclose m_cursor
deallocate m_cursor
end
請大神優化指導。
SQL游標操作
select count id from info select from info 清除所有記錄 truncate table info declare i int set i 1 while i 1000000 begin insert into info values justin str i...
sql 迴圈,游標
declare userid varchar 50 declare my cursor cursor 定義游標 for select userid from dbo.memberaccount 查出需要的集合放到游標中 open my cursor 開啟游標 fetch next from my c...
sql游標小記
游標優點 游標允許應用程式對查詢語句select 返回的行結果集中每一行進行相同或不同的操作,而不是一次對整個結果集進行同一種操作 它還提供對基於游標位置而對錶中資料進行刪除或更新的能力 缺點 處理大資料量時,效率低下,占用記憶體大 一般來說,能使用其他方式處理資料時,最好不要使用游標,除非是當你使...