set @i=1;
select @rowsCount = COUNT(1) from @salesVolumeTable
while @i<= @rowsCount
begin --循环开始
declare @subordinateTotal decimal(18,2)=0; --
declare @userId2 int=0;--
select @userId2=UserId from @salesVolumeTable where RId=@i;
--
select @subordinateTotal = ISNULL(SUM(Reward),0) from @salesVolumeTable
where UserId in (select SubordinateUserId from @subordinateUserTable where UserId=@userId2) and Reward>0;
update @salesVolumeTable set ActualReward=Reward-@subordinateTotal where UserId=@userId2
set @i=@i+1;
end
sql while 使用
最新推荐文章于 2023-04-28 11:07:00 发布