簡單的一個sql表遍歷 一般我們寫儲存過程或者其他sql語句的時候都會用到迴圈遍曆數據,最常用的兩種就是 1、游標 2、臨時表+while 下麵貼出示例代碼 這中找最小值遍歷的方式,代碼較簡潔,我比較喜歡用這種,就是不知道這種和其他兩種對比 有什麼缺點,還望各位大佬們指點。 ...
簡單的一個sql表遍歷
一般我們寫儲存過程或者其他sql語句的時候都會用到迴圈遍曆數據,最常用的兩種就是
1、游標
2、臨時表+while
下麵貼出示例代碼
DECLARE @MinReLogID INT--這裡的 MinReLogID 一般都是表中的主鍵
SELECT TOP 1 @MinReLogID= MIN(PKID) FROM APSI_OrderReplaceLog --找出最小的主鍵 (pkid 為主鍵)
WHILE(@MinReLogID IS NOT NULL )
BEGIN
--主要的業務邏輯
SELECT TOP 1 @MinReLogID= MIN(PKID) FROM APSI_OrderReplaceLog AND PKID>@MinReLogID--最關鍵的一步 找出下一個最小的主鍵
END
這中找最小值遍歷的方式,代碼較簡潔,我比較喜歡用這種,就是不知道這種和其他兩種對比 有什麼缺點,還望各位大佬們指點。