简单的一个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
这中找最小值遍历的方式,代码较简洁,我比较喜欢用这种,就是不知道这种和其他两种对比 有什么缺点,还望各位大佬们指点。