一、第一种方法,游标

定义游标 DECLARE cur_ClubHeadCash CURSOR FAST_FORWARD READ_ONLY FOR,循环每行 FETCH NEXT FROM cur_ClubHeadCash INTO @intUserID, @Clubid, @Amount

DECLARE @intUserID INT,@Amount INT, @Clubid INT,@AmountTmp INT

DECLARE cur_ClubHeadCash CURSOR FAST_FORWARD READ_ONLY FOR
SELECT userid,cid,cash FROM #temp WHERE userid not in(1000882) ORDER BY userid ASC OPEN cur_ClubHeadCash
FETCH NEXT FROM cur_ClubHeadCash INTO @intUserID, @Clubid, @Amount WHILE @@FETCH_STATUS = 0
BEGIN
PRINT @intUserID
PRINT @Clubid
PRINT @Amount SET @AmountTmp= @Amount*-1
PRINT @AmountTmp --EXEC dbo.PrPsWeb_UpdateClubCash
-- @Clubid,
-- 13001,
-- @AmountTmp,
-- '127.0.0.1',
-- '管理员减少房卡',
-- NULL,
-- 0 --EXEC dbo.PrPsWeb_UpdateUserCash
-- @intUserID,
-- 13000,
-- @Amount,
-- '127.0.0.1',
-- '管理员增加金币',
-- NULL,
-- 0 FETCH NEXT FROM cur_ClubHeadCash INTO @intUserID,@Clubid,@Amount END CLOSE cur_ClubHeadCash
DEALLOCATE cur_ClubHeadCash DROP TABLE #temp

二、第二种方法,while循环

获取需处理表的所有行以及行号,取最小行号min和最大行号max,进行循环

DECLARE @intMinId INT,@intMaxId INT,@intClubID INT,@lngUpdateAmount BIGINT

SELECT RowID=IDENTITY(INT,1,1),A.ClubID,A.NeedAmount
INTO #templist
FROM Game.UserCreateClubDesk AS A WHERE A.ServerID=@intServerID SELECT @intMinId =MIN(RowID),@intMaxId=MAX(RowID)
FROM #templist WHILE @intMinId<=@intMaxId
BEGIN
SELECT @intClubID=ClubID,@lngUpdateAmount=NeedAmount
FROM #templist WHERE RowID=@intMinId
EXEC dbo.PrPsWeb_UpdateClubCash
@intClubID,
@sintSourceType,
@lngUpdateAmount,
'127.0.0.1',
@chvMemo,
NULL,
0
SET @intMinId=@intMinId+1
END
DROP TABLE #templist

SQL中循环的实现方式的更多相关文章

  1. SQL中循环和条件语句

    .if语句使用示例: declare @a int begin print @a end else begin print 'no' end .while语句使用示例: declare @i int ...

  2. sql中循环的存储过程

    ), a2 bigint, a3 bigint) returns void as $$declare ii integer; begin II:; FOR ii IN a2..a3 LOOP INSE ...

  3. react中循环节点的方式以及图片引用的方式

    import React from 'react' import img from '../public/img/001.jpg' // 此时img是一个变量,在下面直接使用该变量即可引入该图片 cl ...

  4. sql中循环插入

    #!/bin/sh for i in {1..10}dokdsql sys/kdb<<EOF insert into test values(2) ; EOFdone

  5. SQL中的循环、for循环、游标

    我们使用SQL语句处理数据时,可能会碰到一些需要循环遍历某个表并对其进行相应的操作(添加.修改.删除),这时我们就需要用到咱们在编程中常常用的for或foreach,但是在SQL中写循环往往显得那么吃 ...

  6. PL/SQL中LOOP循环控制语句

    在PL/SQL中可以使用LOOP语句对数据进行循环处理,利用该语句可以循环执行指定的语句序列.常用的LOOP循环语句包含3种形式:基本的LOOP.WHILE...LOOP和FOR...LOOP. LO ...

  7. (转)SQL中的循环、for循环、游标

    我们使用SQL语句处理数据时,可能会碰到一些需要循环遍历某个表并对其进行相应的操作(添加.修改.删除),这时我们就需要用到咱们在编程中常常用的for或foreach,但是在SQL中写循环往往显得那么吃 ...

  8. Oracle中PL/SQL的循环语句

    在PL/SQL中可以使用LOOP语句对数据进行循环处理,利用该语句可以循环执行指定的语句序列.常用的LOOP循环语句包含3种形式:基本的LOOP.WHILE...LOOP和FOR...LOOP. LO ...

  9. Oracle PL/SQL中的循环处理(sql for循环)

    今天来说下Oracle中的循环迭代处理,因为从自己的博客统计中看到,不少网友都搜索了关键字"SQL FOR循环",所以打算在这里说下个人的理解. PL/SQL也和我们常用的编程语言 ...

随机推荐

  1. Python基础教程(013)--一行代码不要做多件事情

    前言 学习代码编写风格 内容 语法错误报错的信息 SystaxErrot:invalid syntax 语法错误, invalid 无效 每行代码负责完成一个动作 阅读代码,从左至右,从上到下. 学习 ...

  2. Android setXfermode 模式

    参考:http://onewayonelife.iteye.com/blog/1169176  setXfermode  设置两张图片相交时的模式  我们知道 在正常的情况下,在已有的图像上绘图将会在 ...

  3. 20175120彭宇辰 《Java程序设计》第十一周学习总结

    教材内容总结 第十三章 Java网络编程 一.URL类 一个URL对象包含的三个基本信息:协议.地址和资源. -协议:必须是URL对象所在的Java虚拟机支持的协议,常用的有:Http.Ftp.Fil ...

  4. 做Data Mining,其实大部分时间都花在清洗数据

    做Data Mining,其实大部分时间都花在清洗数据 时间 2016-12-12 18:45:50  51CTO 原文  http://bigdata.51cto.com/art/201612/52 ...

  5. h5调用微信支付功能

    支付按钮的点击事件 $(´.Save_Patient_Msg´).click(function(){ $(´.Save_Patient_Msg´).off(´click´); var hrdfId = ...

  6. Mac定时执行脚本_服务launchctl

    Mac 设置自动执行定时任务, 步骤: 1. 编写plist 2.将plist放入该目录下 ~/Library/LaunchAgents 3.命令启动 添加: launchctl load /Syst ...

  7. PS操作

    笔:B 橡皮:E 新建:C+N 选取套索:L 套索后按Alt,移动 放大:Ctrl + “+” 或 Z 缩小:Ctrl + “-” 或 Alt Z / Alt ,然后用滑轮控制大小 撤销:Ctrl + ...

  8. 通过注册表修改IE的Internet选项

    Internet Explorer 安全区域设置存储在以下注册表子项下面: HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\I ...

  9. "New page after" by code

    Hi. There is a method for starting of the new page in the EngineV2: Engine.NewPage(); You can call i ...

  10. python字符串常用函数-大小写,删除空格,字符串切片