一个简单的一个sql表遍历

简单的一个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

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

原文地址:https://www.cnblogs.com/yohao/p/11349951.html