sql循环多行数据,遍历sql查询结果,sql遍历查询结果
--查询表B,把查询到的数据插入临时表#A中,根据表B 的ID 进行排序;表#A中 的 i 字段 由1开始增加排序;
SELECT ROW_NUMBER() OVER ( ORDER BY ID ) i,* INTO #A FROM B
DECLARE @count INT;
SELECT @count=COUNT(1) FROM #A --获取临时表#A 的总数量,用来循环;
DECLARE @i INT=1;
WHILE(@i<=@count) --循坏
BEGIN
DECLARE @a_id INT;
--根据自增1的 i 字段进行对表 #A 进行查询,得到 ID;
SELECT @a_id=ID FROM #A WHERE i=@i
--输出ID;
PRINT @a_id
--此处进行各种自己想要的操作。
--避免死循环 @i +1;
SET @i=@i+1;
END
--千万要记得删除临时表 #A,否则下次执行会报错:“数据库中已存在名为'#A' 的对象”。
DROP TABLE #A