对存储过程中返回的结果运行foreach循环

本文关键字:结果 运行 foreach 循环 返回 存储 存储过程 过程中 | 更新日期: 2023-09-27 17:59:36

我有一个从表1返回结果的存储过程,然后在另一个存储过程中使用该结果来更新表2。我想知道是否可以将其合并为一个存储过程,问题是它需要根据表1中的值在表2上运行foreach循环,以找到所有要更新的值。不知道从哪里开始,也不知道是否可能。

对存储过程中返回的结果运行foreach循环

这是为每个项目运行一些东西的示例。但对于更新,您应该不需要这个,您应该能够通过CROSS JOIN解决这个问题,无论如何,下面的例子。

 declare @i int;
set @i = 0;
declare @t table
(
int id identity,
varchar(max) col1,
varchar(max) col2
)
insert into @t(col1,col2)
select col1,
        col2 from  FROM        [Table]

set i = 0;
declare @sum int
set @sum = 0;
while(i < select count(*) from @t)
begin 
 select case when (col1 == col2) then @sum = @sum+1 else @sum from @t
where id = i;
i++;
end