sql 循环执行游标
---定义开始和结束时间
declare @st_dt datetime
declare @en_dt datetime
---时间赋值
select @st_dt = ''
select @en_dt = '' ---定义中间变量
declare @dt datetime
select @dt = @st_dt ---开始按照时间循环执行
while @dt <= @en_dt
begin
---这个是个演示,可以替换为需要执行的存储过程
DECLARE @Tel varchar(50),
@ID varchar(50)
DECLARE Subscribe_Cursor CURSOR --定义游标
FOR
(
select top 360 CONVERT(VARCHAR(20),CONVERT(DECIMAL(20,0),F1)),id from SData where Tag=0
)
OPEN Subscribe_Cursor; --打开游标
FETCH NEXT FROM Subscribe_Cursor INTO @Tel,@ID
WHILE @@FETCH_STATUS = 0
BEGIN
insert into LS_ReCall(Tel,ReCallPlanDate)values(@Tel,@dt)
update SData set Tag=1 where id=@ID
FETCH NEXT FROM Subscribe_Cursor INTO @Tel,@ID;
END
CLOSE Subscribe_Cursor; --关闭游标
DEALLOCATE Subscribe_Cursor; --释放游标
---中间变量加1
select @dt = DATEADD(DAY,1,@dt) end ---定义开始和结束时间
declare @st_dt datetime
declare @en_dt datetime
---时间赋值
select @st_dt = ''
select @en_dt = '' ---定义中间变量
declare @dt datetime
select @dt = @st_dt ---开始按照时间循环执行
while @dt <= @en_dt
begin
---定义开始和结束工号
declare @st_code int
declare @en_code int
---工号赋值
select @st_code =1
select @en_code = 18
---定义中间变量
declare @code int
select @code = @st_code
while @code <= @en_code
begin
DECLARE @ID varchar(50)
DECLARE Subscribe_Cursor CURSOR --定义游标
FOR
(
select top 20 id from LS_ReCall where ReCallPlanDate=@dt and EmpCode is null
)
OPEN Subscribe_Cursor; --打开游标
FETCH NEXT FROM Subscribe_Cursor INTO @ID
WHILE @@FETCH_STATUS = 0
BEGIN
update LS_ReCall set EmpCode=@code where id=@ID
FETCH NEXT FROM Subscribe_Cursor INTO @ID;
END
CLOSE Subscribe_Cursor; --关闭游标
DEALLOCATE Subscribe_Cursor; --释放游标
---中间变量加1
select @code = @code+1
end
---中间变量加1
select @dt = DATEADD(DAY,1,@dt) end
sql 循环执行游标的更多相关文章
- 五、PL/SQL循环、游标、函数和过程
--PL/SQL基础知识学习 --一.PL/SQL语句块,基础语法格式 DECLARE --变量声明列表 info varchar(25); --变量声明 stu_unm integer := 15; ...
- C#保留2位小数几种场景总结 游标遍历所有数据库循环执行修改数据库的sql命令 原生js轮盘抽奖实例分析(幸运大转盘抽奖) javascript中的typeof和类型判断
C#保留2位小数几种场景总结 场景1: C#保留2位小数,.ToString("f2")确实可以,但是如果这个数字本来就小数点后面三位比如1.253,那么转化之后就会变成1.2 ...
- SQL中的循环、for循环、游标
我们使用SQL语句处理数据时,可能会碰到一些需要循环遍历某个表并对其进行相应的操作(添加.修改.删除),这时我们就需要用到咱们在编程中常常用的for或foreach,但是在SQL中写循环往往显得那么吃 ...
- (转)SQL中的循环、for循环、游标
我们使用SQL语句处理数据时,可能会碰到一些需要循环遍历某个表并对其进行相应的操作(添加.修改.删除),这时我们就需要用到咱们在编程中常常用的for或foreach,但是在SQL中写循环往往显得那么吃 ...
- sql server 存储过程---游标的循环
sqlserver中的循环遍历(普通循环和游标循环) sql 经常用到循环,下面介绍一下普通循环和游标循环 1.首先需要一个测试表数据Student
- 【PL/SQL练习】游标cursor :oracle 在执行sql语句时,为sql语句所分配的一个私有的内存区域
隐式游标:一次只能返回一行结果(不需要定义,默认自动建立) 显式游标: 需要开发人员提前定义,可以通过循环的方式处理游标里的sql语句,返回多行结果 隐式游标的属性: sql%rowcou ...
- java for循环里面执行sql语句操作,有效结果只有一次,只执行了一次sql mybatis 循环执行update生效一次 实际只执行一次
java后台controller中,for循环执行数据库操作,但是发现实际仅仅执行了一次,或者说提交成功了一次,并没有实际的个数循环 有可能是同一个对象导致的 可以仔细看一下下面两段代码有什么区别 p ...
- Oracle中PL/SQL的执行部分和各种流程控制
Oracle中PL/SQL的执行部分和异常部分 一.PL/SQL的执行部分. 赋值语句. 赋值语句分两种,一种是定义一个变量,然后接收用户的IO赋值:另一种是通过SQL查询结果赋值. 用户赋值举例: ...
- sqlserver中的循环遍历(普通循环和游标循环)
sql 经常用到循环,下面介绍一下普通循环和游标循环 1.首先需要一个测试表数据Student
随机推荐
- Dubbo入门到精通学习笔记(七):基于Dubbo的分布式系统架构介绍(以第三方支付系统架构为例)、消息中间件的作用介绍
文章目录 架构简单介绍 消息中间件在分布式系统中的作用介绍 消息中间件的定义 消息中间件的作用 应用场景 JMS(Java Message Service) JMS消息模型 实现了JMS规范的消息中间 ...
- PAT_A1117#Eddington Number
Source: PAT A1117 Eddington Number (25 分) Description: British astronomer Eddington liked to ride a ...
- testNG官方文档翻译-3 testng.xml
你可以通过以下几种不同的方法触发TestNG: 用一个testng.xml文件 使用ant 从命令行触发 这个章节将会介绍testng.xml的格式(你也可以在下面找到关于ant和命令行的内容). 关 ...
- python输入一个\输出2个\问题
在Python里面,如果\后面不是一个合法的转移字符,那么,Python会打印两个\,换句话说,Python将\也当成普通字符看待,而不是转义符的标志: >>>S = 'C:\py\ ...
- 笔记-Linux安装中文版man
使用环境为Ubuntu,安装中文版man,同时保留了英文原版,步骤如下: 第一种方法 sudo apt-get update # 更新你的下载源目录,此步骤可省略. sudo apt-get inst ...
- 利用字节流文件生成包含多文件的zip文件
InputStream[] inputStreamsList = new InputStream[jsonArr.size()]; String[] fileNameList = new String ...
- vue 单元素过渡
demo <!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF- ...
- dubbo入门之异步调用
dubbo默认使用同步的方式调用.但在有些特殊的场景下,我们可能希望异步调用dubbo接口,从而避免不必要的等待时间,这时候我们就需要用到异步.那么dubbo的异步是如何实现的呢?下面就来看看这个问题 ...
- net core发邮件——MimeKit
var message = new MimeMessage(); message.From.Add(new MailboxAddress("谁发的", "发送方的邮件地址 ...
- wpf tabcontrol内的datagrid的selectionChanged事件向往传递问题
tabcontrol 内的一个tabitem里是datagrid 当程序相应datagrid的selectionchanged事件后会向上传递到tabcontrol的selectionchanged事 ...