Sql Server 游標筆記

2021-10-06 13:22:10 字數 1055 閱讀 1704

游標是sql 的一種資料訪問機制。可以將游標簡單的看成是查詢的結果集的乙個指標,可以根據需要在結果集上面來回滾動,瀏覽需要的資料。

--宣告游標

declare cur_cust_level cursor

forselect id,consumeamount from customers

--開啟游標

open cur_cust_level

--瀏覽資料,取資料id,consumeamount

--取資料

declare

@idint

declare

@cacount

intfetch

next

from cur_cust_level into

@id,

@cacount

--迴圈往下

while

(@@fetch_status=0

)begin

--修改消費等級if(

@cacount

<

500)

update customers set consumeleve=

'低消費'

where id=

@idelseif(

@cacount

<

1000

)update customers set consumeleve=

'中消費'

where id=

@idelse

update customers set consumeleve=

'高消費'

where id=

@idfetch

next

from cur_cust_level into

@id,

@cacount

end--關閉游標

close cur_cust_level

--釋放游標

deallocate cur_cust_level

select

*from customers

mysql游標很慢 Sqlserver 游標 慢

net專案中有個模組做統計功能,原先方法速度很慢,所以需要改進,統計結果如下圖 下圖接上圖後面 原先的處理方式是,這些資料分別涉及到四五張表,前台從資料庫中查詢出需要的資料集,然後分別遍歷這些資料集拼接html字串顯示在介面上。優化思考 net專案中有個模組做統計功能,原先方法速度很慢,所以需要改進...

SQL Server 游標使用

游標概念 資料庫操作中我們常常會遇到這樣情況,即從某一結果集中逐一地讀取一條記錄。那麼如何解決這種問題呢?游標為我們提供了一種極為優秀的解決方案。游標 cursor 是系統為使用者開設的乙個資料緩衝區,存放sql語句的執行結果。每個游標區都有乙個名字。使用者可以用sql語句逐一從游標中獲取記錄,並賦...

sqlserver游標使用

create procedure pk test as 宣告2個變數 declare o id nvarchar 20 declare a salary float 宣告乙個游標mycursor,select語句中引數的個數必須要和從游標取出的變數名相同 declare mycursor curso...